# twoPhaseEulerFoam Problems

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

 March 22, 2009, 07:30 this could be useful. #2 Member   Raghavendra Join Date: Mar 2009 Location: Goteborg, Sweden Posts: 94 Rep Power: 9 TwoPhaseEulerFoam and Boundary conditions what value you have given for particle velocity ? Regards Raghavendra

 March 22, 2009, 20:22 #3 New Member   Dale Join Date: Mar 2009 Posts: 10 Rep Power: 9 I made the velocity Ua at the bottom boundary 0.25 m/s

 March 23, 2009, 15:59 Boundary condition problem? #4 Member   Raghavendra Join Date: Mar 2009 Location: Goteborg, Sweden Posts: 94 Rep Power: 9 Hi.. probably u may have some wrong boundary condition.. and also with small time step the simulation could be stable (even I am very much new to this usage of twoPhaseEulerFoam ).. Hope the other link (replies from Alberto) would have helped you to achieve a stable simulation running! ? Regards Raghavendra

 March 24, 2009, 06:08 #5 New Member   Dale Join Date: Mar 2009 Posts: 10 Rep Power: 9 Yes, I think there is a problem with my boundary conditions or initial values, which is causing the problems with interpolation. I've tried other interpolation schemes with little success. Reducing the time interval to 1e-6 also doesn't help. Perhaps my mesh isn't fine enough, it is 30 x 10 cells, each 1 cm square (it is a 2D simulation). With regards to the initial values for Ua and Ub in the /0 directory, what is the best manner to determine these?

 March 24, 2009, 16:02 #6 Member   Raghavendra Join Date: Mar 2009 Location: Goteborg, Sweden Posts: 94 Rep Power: 9 Hello Dale, In my case, am trying to simulate 2D bubble column with air injected at the bottom to the wall (as I mentioned in the previous thread i.e. with the link in my previous post). Inlet velocity was given so there was no problem for me to choose the inlet velocity.. But also in some journal I found inlet velocity can be found alpha = Vinlet/Vsuperficial, thus if you know the values for alpha and superficial velocity Vinlet can be calculated easily.. And regarding the drag model .. is there any specific reason to choose blended in the dragPhase ..I tried with dragPhase a (a is the discrete phase in my case).. What about your inlet, is it the entire bottom or just a part of it ? Also lookup for the alpha value at the inlet .. (the previous thread which I started could be really useful for your case..coz it is like step by step procedure and do's and don't's ..thanks to Alberto If possible mail me the case files to my id raagh77@gmail.com.. Regards Raghavendra

 March 24, 2009, 16:08 small correction #7 Member   Raghavendra Join Date: Mar 2009 Location: Goteborg, Sweden Posts: 94 Rep Power: 9 alpha = Vsup/Vinlet..

March 25, 2009, 03:30
#8
New Member

Dale
Join Date: Mar 2009
Posts: 10
Rep Power: 9
Hi Raghavendra,

I've attached the archive of the directory, it should have everything you need.

Thanks for all the help, hopefully you can give me some ideas, since I'm out.

Many thanks,
Dale
Attached Files
 2dcol.tar.gz (16.5 KB, 33 views)

March 25, 2009, 03:33
#9
Senior Member

Alberto Passalacqua
Join Date: Mar 2009
Location: Ames, Iowa, United States
Posts: 1,910
Rep Power: 27
Hi

if you are simulating a gas-liquid system, this

Quote:
 Selecting viscosityModel Syamlal Selecting conductivityModel HrenyaSinclair Selecting radialModel Gidaspow Selecting granularPressureModel Lun Selecting frictionalStressModel JohnsonJackson
says the settings are wrong. All the settings in the list show you did not turn the kinetic theory closures for the granular flow, so you're actually trying to describe your particles as solid particles.
Turn it off in the constant/kineticTheoryProperties dictionary.

From here:

Quote:
 Max Ur Courant Number = 5
you also understand that your time step is huge (dt = 0.1s). The Courant number can at best be 1, but you might want it to be smaller for accuracy.

Best regards
__________________
Alberto Passalacqua

GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats.
OpenQBMM - An open-source implementation of quadrature-based moment methods.

To obtain more accurate answers, please specify the version of OpenFOAM you are using.

 March 25, 2009, 04:07 #10 New Member   Dale Join Date: Mar 2009 Posts: 10 Rep Power: 9 Hi Alberto, Thanks for the tip about dt, I was just trying to get things to work - I have turned this down a lot. Below is my kineticTheoryProperties file, it looks to me like the flag is set to off? I've read the thesis by Rusche but couldn't find mention of any of those models - I copied the files straight from the bubbleColumn tutorial which worked fine. Is there any other source of documentation that I could refer to other than the Rusche thesis? Many thanks, Dale /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 1.5 | | \\ / A nd | Web: http://www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object kineticTheoryProperties; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // kineticTheory off; equilibrium on; e e [ 0 0 0 0 0 0 0 ] 0.9 ; alphaMax alphaMax [ 0 0 0 0 0 0 0 ] 0.6 ; alphaMinFriction alphaMinFriction [ 0 0 0 0 0 0 0 ] 0.5 ; Fr Fr [ 1 -1 -2 0 0 0 0 ] 0.05 ; eta eta [ 0 0 0 0 0 0 0 ] 2.0 ; p p [ 0 0 0 0 0 0 0 ] 5.0 ; phi phi [ 0 0 0 0 0 0 0 ] 25.0 ; viscosityModel Syamlal; conductivityModel HrenyaSinclair; granularPressureModel Lun; frictionalStressModel JohnsonJackson; radialModel Gidaspow; HrenyaSinclairCoeffs { L L [ 0 1 0 0 0 0 0 ] 5.0e-4 ; } // ************************************************** *********************** //

 March 25, 2009, 09:44 #11 Senior Member   Alberto Passalacqua Join Date: Mar 2009 Location: Ames, Iowa, United States Posts: 1,910 Rep Power: 27 Hi, I'm sorry, I was wrong. The code is simply reading those settings even if not using them. So the problem is not there. Please ignore my previous comment on these submodels. About the documentation, these submodels were added by Niklas Nordin and in part by me. There is no OF based documentation that I know of, but you can find the theory behind them for example in the book Gidaspow, Multiphase flow and fluidization, 1994, Academic Press, or in Berend van Wachem PhD thesis. Best regards, __________________ Alberto Passalacqua GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats. OpenQBMM - An open-source implementation of quadrature-based moment methods. To obtain more accurate answers, please specify the version of OpenFOAM you are using.

 April 2, 2009, 07:54 #12 New Member   Dale Join Date: Mar 2009 Posts: 10 Rep Power: 9 I've fiddled around with the timesteps, number of cells etc to no avail. I think the problem is in the mesh, as soon as I put the mesh in from the tutorial things work perfectly. I've posted my mesh below, if anyone can give any advice as to what's wrong with this? Cheers, DAle /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 1.5 | | \\ / A nd | Web: http://www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object blockMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // convertToMeters 1; vertices ( (0 0 0) //Vertex 0, bottom left, front face (0.1 0 0) //Vertex 1, bottom right, front face (0.1 0 0.01) //Vertex 2, bottom left, back face (null) (0 0 0.01) //Vertex 3, bottom right, back face (null) (0 0.3 0) // Vertex 4, top left, front face (0.1 0.3 0) //Vertex 5, top right front face (0.1 0.3 0.01) //Vertex 6, top right, back face (null) (0 0.3 0.01) //Vertex 7, top left, back face (null) ); edges ( ); blocks ( hex (0 1 2 3 4 5 6 7)(100 1 300) simpleGrading (1 1 1) ); patches ( patch inlet ( (3 2 1 0) ) patch outlet ( (4 5 6 7) ) wall walls ( (4 7 3 0) //left wall (6 5 1 2) //right wall ) /* empty frontandback ( (5 4 0 1) // front (7 6 2 3) //back ) */ ); mergePatchPairs ( );

 April 2, 2009, 09:07 #13 Member   Sachin Kanetkar Join Date: Mar 2009 Posts: 57 Rep Power: 9 Hi As far as i think the mesh seems to be too much stretched. As you have divided 0.01 into 300 parts and 0.1 into 100 parts and 0.3 is just 1 cell... division and domain usually are proportionate...if the case is 2D why such huge difference ? Increase gradually instead of going so high directly... Initial values could also be a problem...check for some experimental results if possible. And i would suggest check it for laminar flow first and then include turbulence models as these might increase your complexities Just suggestions.. hope it helps and reduces confusion bye Sachin

 April 5, 2009, 03:37 #14 New Member   Dale Join Date: Mar 2009 Posts: 10 Rep Power: 9 Hey all, Thanks for the advice, I got it going (after fiddling with the meshing, which was valid, but wrong). As another question, I want to study liquid mixing in the column. Is there a way in paraview to monitor the progress of say a particular bit of fluid as it moves its way through the column? This to me seems unlikely. If that's correct then the other option would be to modify the code so it keeps track of the concentration/fraction of the third phase (for the record the third phase would be a solution with properties pretty much the same as water, and also totally miscible). To summarise I'm interested in tracking the spread of a miscible fluid that enters at a single point, or obtaining some idea of the mixing time. Any insight into the problem would be muchly appreciated. Many thanks, Dale

 April 6, 2009, 02:25 #15 Senior Member   Alberto Passalacqua Join Date: Mar 2009 Location: Ames, Iowa, United States Posts: 1,910 Rep Power: 27 Hi Dale, if what you want is studying how a "bit" of water mixes inside your column, you probably don't need a third phase, but simply a passive scalar transported by the water phase. If this is your case, the modification to the code is straightforward. See scalarTransportFoam to see how you can add such a transport equation to your code. Best, __________________ Alberto Passalacqua GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats. OpenQBMM - An open-source implementation of quadrature-based moment methods. To obtain more accurate answers, please specify the version of OpenFOAM you are using.

April 10, 2009, 20:19
#16
New Member

Dale
Join Date: Mar 2009
Posts: 10
Rep Power: 9
I did as you suggested, alberto and copied the scalar transport equation into my code, I placed it into a new folder called Advection.H (which is shown below) and modified createFields.H accordingly.

However, I must be doing something wrong as my code isn't compiling. Rather than paste all the code into here, I've archived the whole directory and attached it to the post.

I'd be grateful if anyone can explain what I'm doing wrong (and why it isn't working)

Thanks for all the help,
Dale

{
DDtC =
fvm::ddt(C)
+ fvm::div(phib, C);
}
Attached Files
 bubbleColumn.tar.gz (30.2 KB, 12 views)

 April 10, 2009, 20:56 #17 Senior Member   Alberto Passalacqua Join Date: Mar 2009 Location: Ames, Iowa, United States Posts: 1,910 Rep Power: 27 Hi Dale, please refer to this tutorial: http://openfoamwiki.net/index.php/Ho...sport_equation Best regards, __________________ Alberto Passalacqua GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats. OpenQBMM - An open-source implementation of quadrature-based moment methods. To obtain more accurate answers, please specify the version of OpenFOAM you are using.

 April 19, 2009, 05:11 #18 New Member   Dale Join Date: Mar 2009 Posts: 10 Rep Power: 9 Thanks a lot alberto, you've definitely put me on the right track. I'm having some problems with meshing, I'm trying to make a small inlet on the side of the column where the tracer solution will enter, but it does not seem to be working in 2D. I'll post the blockMeshDict file below, if anyone can offer suggestions that'd be great. Also, has anyone attempted to include mass transfer and or a population balance model for bubble size in the code? Any insights on these topics will be appreciated. Thanks, Dale /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 1.5 | | \\ / A nd | Web: http://www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object blockMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // convertToMeters 1; vertices ( (0 0 0) //Vertex 0, bottom left, front face (1 0 0) //Vertex 1, bottom right, front face (1 6 0) //Vertex 2, top right, front face (0 6 0) //Vertex 3, top left, front face (0 0 0.01) // Vertex 4, Bottom left, back face (1 0 0.01) //Vertex 5, bottom right, back face (1 6 0.01) //Vertex 6, top right, back face (0 6 0.01) //Vertex 7, top left, back face (1 0.789 0) (1.25 0.789 0) (1.25 0.868 0) (1 0.868 0) (1 0.789 0.01) (1.25 0.789 0.01) (1.25 0.868 0.01) (1 0.868 0.01) ); edges ( ); blocks ( hex (0 1 2 3 4 5 6 7)(20 76 1) simpleGrading (1 1 1) hex (8 9 10 11 12 13 14 15)(10 1 1) simpleGrading (1 1 1) ); patches ( patch airinlet ( (1 5 4 0) ) patch liquidinlet ( (14 10 9 13) ) /*patch liquidoutlet ( (8 12 11 15) ) */ patch outlet ( (3 7 6 2) ) wall walls ( (0 4 7 3) //left wall (2 6 5 1) ) /* wall rightwall ( //right wall //(8 12 15 11) ) /* empty frontandback ( (5 4 0 1) // front (7 6 2 3) //back ) */ ); mergePatchPairs ( // );

April 19, 2009, 16:23
#19
Senior Member

Alberto Passalacqua
Join Date: Mar 2009
Location: Ames, Iowa, United States
Posts: 1,910
Rep Power: 27
Quote:
 Originally Posted by Dale Also, has anyone attempted to include mass transfer and or a population balance model for bubble size in the code? Any insights on these topics will be appreciated.
There is a paper published on the implementation of population balances:

L.F.L.R. Silva, R.B. Damian, P.L.C. Lage, Implementation and analysis of numerical solution of the population balance equation in CFD packages, Computers and Chemical Engineering 32 (2008) 2933–2945.

Best,
__________________
Alberto Passalacqua

GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats.
OpenQBMM - An open-source implementation of quadrature-based moment methods.

To obtain more accurate answers, please specify the version of OpenFOAM you are using.

 April 21, 2009, 09:02 #20 New Member   Dale Join Date: Mar 2009 Posts: 10 Rep Power: 9 Hey alberto, Thanks for the article. I have quite a few, but it is always good to have one more for the list. I was just looking to see if anyone had any success in implementing such a model. When I modeled the concentration I got crazy numbers (i.e. 10 times greater than the initial concentrations) as well as negatives. I'm not sure what's causing this, perhaps my too large mesh. Any help is appreciated, Cheers, Dale

 Thread Tools Display Modes Linear Mode

 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 OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post alberto OpenFOAM Running, Solving & CFD 74 June 7, 2016 05:26 su_junwei OpenFOAM Running, Solving & CFD 2 November 2, 2012 02:12 Micha CD-adapco 0 August 6, 2003 13:55 Ivan de Miguel Urain FLUENT 1 November 16, 2001 10:36 Aleksey Alekseev Main CFD Forum 0 May 12, 1999 15:38

All times are GMT -4. The time now is 01:52.