|
[Sponsors] |
dispersion model with lagragian particle tracking model for incompressible flows |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
August 2, 2012, 11:19 |
|
#21 |
Member
Mat
Join Date: Jan 2012
Posts: 60
Rep Power: 14 |
Dear Eelco,
Why did you add the lift force as a non-coupled contribution ? Shouldn't it be coupled ? Best, Mat |
|
September 4, 2012, 12:12 |
|
#22 |
New Member
Mohsen Na
Join Date: Sep 2012
Posts: 1
Rep Power: 0 |
i have the same problem, should i change my OF Version? idont know how should i compile this
|
|
September 5, 2012, 06:20 |
|
#23 |
Member
Mat
Join Date: Jan 2012
Posts: 60
Rep Power: 14 |
You should compile the library of Eelco inside the version 2.1 of OpenFOAM.
Here, the information to install and compile this version: http://www.openfoam.org/download/git.php Best, Mat |
|
September 11, 2012, 06:38 |
|
#24 |
Senior Member
Eelco van Vliet
Join Date: Mar 2009
Location: The Netherlands
Posts: 124
Rep Power: 19 |
Hi Mat,
Explicite Lift is most straight forward. I do get good agreement with measurements of bubble plumes so for me it is good enough. How would you suggest to implement the lift force ? Regards Eelco |
|
October 8, 2012, 07:07 |
|
#25 |
Member
Mat
Join Date: Jan 2012
Posts: 60
Rep Power: 14 |
Hello Eelco,
I implemented implicitely the lift force and it also gives correct agreement with my experimental reference. I thought it was better for the stabilization and also that it could have an influence in two-way coupling. But I don't think it is so important. Best, Mat |
|
October 10, 2012, 10:37 |
|
#26 |
Senior Member
Eelco van Vliet
Join Date: Mar 2009
Location: The Netherlands
Posts: 124
Rep Power: 19 |
Well, any improvements are appreciated, that's why I posted my version of the LPT in incompressible flows. By the way, in my lift force with the Tomiyama model was a small error which explained by my plume stayed bit to narrow. Should be replaced by in the file LiftForce.C
Code:
// Drag relation based on Tomiyama etal (1995), in advance in multiphase flows scalar CL; scalar E=1/(1+0.163*pow(Eo,0.757)); scalar EoD=Eo/pow(E,2/3.); if(EoD>10) { // note: in the Tomiyama model this is -0.29, however this give a discontinuity for the CL~Eo relation // at Eo=10. -0.27 keeps this relation continuous CL=-0.27; } else { scalar fEoD=0.00105*pow(EoD,3)-0.0159*pow(EoD,2)-0.0204*EoD+0.474; if(EoD<4) { CL=min(0.288*tanh(0.121*Re),fEoD); } else { CL=fEoD; } } return CL; Furthermore, I have implemented a cloudfunctionobject (just like VoidFraction) in order to gather the statistics of the dispersed phase (dispersed phase velocity and rms values). If you are interested let me know. I would appreciate your implementation of the lift force as well of course:-) Regards Eelco |
|
December 21, 2012, 19:11 |
|
#27 |
New Member
Join Date: Dec 2012
Posts: 2
Rep Power: 0 |
Hello everyone.
This solvers looks really nice eelcovv. Unfortunately I can't compile it yet, I have installed a fresh version of OpenFOAM from the git. I can compile the library (libincompressibleLagrangianIntermediate.so) without errors. (see wmake.log). But when I try to compile the solver I obtain the next error (complete log Allwmake.log): Code:
/home/wellDone/OpenFOAM/wellDone-2.1.x/platforms/linux64GccDPOpt/bin/pimpleLPTBubbleFoam /home/wellDone/OpenFOAM/wellDone-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLagrangianIntermediate.so: undefined reference to `Foam::BubbleLookupTableInjection<Foam::BubbleCloud<Foam::Cloud<Foam::CollidingParcel<Foam::BubbleParcel<Foam::particle> > > > >::BubbleLookupTableInjection(Foam::dictionary const&, Foam::BubbleCloud<Foam::Cloud<Foam::CollidingParcel<Foam::BubbleParcel<Foam::particle> > > >&)' /home/wellDone/OpenFOAM/wellDone-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLagrangianIntermediate.so: undefined reference to `Foam::BubbleLookupTableInjection<Foam::BubbleCloud<Foam::Cloud<Foam::BubbleParcel<Foam::particle> > > >::BubbleLookupTableInjection(Foam::dictionary const&, Foam::BubbleCloud<Foam::Cloud<Foam::BubbleParcel<Foam::particle> > >&)' collect2: ld returned 1 exit status make: *** [/home/wellDone/OpenFOAM/wellDone-2.1.x/platforms/linux64GccDPOpt/bin/pimpleLPTBubbleFoam] Error 1 Thanks. |
|
December 23, 2012, 21:21 |
|
#28 |
New Member
Join Date: Dec 2012
Posts: 2
Rep Power: 0 |
Hi,
I delved a little deeper into the error and I realized that the file BubbleLookupTableInjection.C present in the folder: $FOAM_USER_SRC/lagrangian/intermediate/submodels/Bubble/InjectionModel/KinematicLookupTableInjection/ is empty. I have assumed that that code has been replaced with a new version in: $FOAM_USER_SRC/lagrangian/intermediate/submodels/Bubble/InjectionModel/BubbleLookupTableInjection/ so I have deleted the KinematicLookupTableInjection folder and everything works now compiling pimpleLPTBubbleFoam. Finally to be able to run the updated case bubcol3d_DES_yeLift_start1_clear could be required to change the boundary condition in nuTilda and nuSgs from nuSgsUSpaldingWallFunction to nutUSpaldingWallFunction as in a new commit they "Added support for variable density incompressible divDevReff for VoF solvers Generalised wall-functions between RAS and LES/DES modelling" and nuSgsUSpaldingWallFunction is obsolete. Regards |
|
January 31, 2013, 03:48 |
bubbleCloudProperties
|
#29 |
Senior Member
Eelco van Vliet
Join Date: Mar 2009
Location: The Netherlands
Posts: 124
Rep Power: 19 |
Hi wellDone,
Thanks for the comments. Yes, probably you need to tweak a bit to get the library compiled, I just compiled it too the latest 2.1.x version, but I don't keep up the versions unless I need to my self. I will have a look to the new wall function you mention. I just got a request to share the particle statistics cloud function object. I am only attaching this because of the limited upload space (only 100kb). You should add this too the CloudFunctionObjects directory and add the following in the intermediate/parcles/include/cloudfumakeParcelCloudFunctionObjects.H file #include "ParticleStatistics.H" and lower makeCloudFunctionObjectType(ParticleStatistics, CloudType); Now you can add to the bubbleCloudProperties the following lines. Code:
cloudFunctions { voidFraction; particleStatistics { resetFields true; prime2Mean true; writeBubblePDF true; timeStart 100; timeEnd 1e10; } } Cheers Eelco |
|
January 31, 2013, 06:44 |
|
#30 |
Member
Join Date: Apr 2010
Posts: 61
Rep Power: 16 |
Thank you very much for the contribution! This cloud function object is useful
Note to remove the following lines in "makeParcelCloudFunctionObjects.H" to compile it. Code:
#include "DispersedPhaseVelocity.H" makeCloudFunctionObjectType(DispersedPhaseVelocity, CloudType); \ |
|
February 1, 2013, 03:39 |
|
#31 |
Senior Member
Jie
Join Date: Jan 2010
Location: Australia
Posts: 134
Rep Power: 16 |
Hi eelcovv
Could I ask how come my kinematicCloudTheta is like the following after I add the voidFraction in the kinematicCloudProperties with the cavityMassPartUncoupledSD_clear case? Code:
dimensions [0 0 0 0 0 0 0]; internalField uniform 0; boundaryField { movingWall { type calculated; value uniform 0; } walls { type calculated; value uniform 0; } } Jie |
|
February 28, 2013, 05:33 |
|
#32 |
Senior Member
Eelco van Vliet
Join Date: Mar 2009
Location: The Netherlands
Posts: 124
Rep Power: 19 |
Not sure why it stays zero. Are you tracking particles ? I should work, it comes with the standard OF distrubution. Try it in one of the LPT tutorial cases to see if you can get it running.
Cheers Eelco |
|
April 12, 2013, 04:33 |
|
#33 |
Senior Member
Jie
Join Date: Jan 2010
Location: Australia
Posts: 134
Rep Power: 16 |
Hi eelcovv
I found that Void Fraction only works with the basicKinematicCloud class but doesn't work with basicKinematicColliding class. The basicKinematicColliding class is the basicKinematicCloud class plus the colliding. However, the void fraction object function keeps outputting zero with the basicKinematicColliding class, but the basicKinematicCloud class did output the right void fraction. jiejie |
|
April 12, 2013, 06:56 |
|
#34 | |
Member
Join Date: Apr 2010
Posts: 61
Rep Power: 16 |
The function move in Colliding class overrides the function move of the Kinematic class. The function to call the void fraction calculation is not including in this class. You can fix it adding the following line in the file
*/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcel.C Code:
if (p.onBoundary() && td.keepParticle) { if (isA<processorPolyPatch>(pbMesh[p.patch(p.face())])) { td.switchProcessor = true; } } p.age() += dt; td.cloud().functions().postMove(p, cellI, dt); } Quote:
|
||
May 24, 2013, 10:21 |
OpenFOAm with Lagrangian particle Tracking
|
#35 |
Senior Member
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 240
Rep Power: 17 |
...take a look at CFDEM/LIGGGHTS coupling openFOAM to LAMMMPS Lagrangian Particle Code in resolved and unresolved way. For treating the turbulence interaction, a coupling between LIGGGHTS particle code and PALABOS Lattice Boltzmann code is in developement, and its embedding in OpenFOAM will be the next challenge to get a full coupled cascade of turbulent particle laden flow
|
|
June 14, 2013, 08:30 |
mo
|
#36 |
New Member
Join Date: May 2012
Posts: 3
Rep Power: 14 |
thanks solved it;#
Last edited by koulis; June 17, 2013 at 08:57. |
|
August 1, 2013, 10:52 |
|
#37 |
New Member
Cay Myers
Join Date: Jun 2013
Posts: 14
Rep Power: 13 |
Thank you for posting this solver! I am very interested in using it and am wondering if you have any advice for how to compile it using version 2.2.
Last edited by baila12; August 2, 2013 at 09:07. Reason: Typo |
|
August 9, 2013, 05:13 |
|
#38 |
New Member
Thomas F.
Join Date: Jun 2013
Location: Graz, Austria
Posts: 14
Rep Power: 13 |
First - thanks eelcovv for this wonderful working solver - pretty much what I needed in advance to the existing solvers in OF!
In case of errors while compiling the solver I changed Code:
-I$(FOAM_USER_SRC)/lagrangian/incompressible/intermediate/lnInclude \ Code:
-I/disk701/home/Dommy/OpenFOAM/Dommy-2.1.x/userPrograms/lagrangian/incompressible/intermediate/lnInclude \ I´m thinking about adding a collision model (such as implemented in icoUncoupledParcelFoam) to that solver. It would make it more accurate for high mass loaddings. Any experiences with that? Speaking of high mass loadings - at the moment I try to validate the solver (with other Euler-Langrange solvers in OF21x) for some test cases. In order to reach significant mass loadings (22 - 100%) one has unite particles to parcels. The solver seams to have problems with a large number of particles per parcel. It crashs from one time step to another with exploding time step continuity errors. By reducing the particles per parcel it works fine again but more parcels have to be calculated - somebody has experienced the same? Regards, Tom |
|
August 19, 2013, 21:25 |
|
#39 |
Member
India
Join Date: Oct 2012
Posts: 84
Rep Power: 14 |
Hi Eelcov,
Thanks for the wonderful solver. I was looking for two way coupled Lagrangian solver and your solver works great! I am simulating a case were one tube having one inlet bifurcates into two branches having one outlet each. The problem is I want a steady state Lagrangian solver. Now, I started studying your solver and in a similar way I tried to modify 'bouyantBousinessqSimpleFoam' as your solver was based on 'bouyantBousinessqPimpleFoam' and I compiled the solver succesfully but when I am running on a test case I am getting following errors: --> FOAM FATAL ERROR: temporary deallocated From function T& Foam::tmp<T>:perator()() in file /opt/openfoam211/src/OpenFOAM/lnInclude/tmpI.H at line 158. FOAM aborting #0 Foam::error:rintStack(Foam::Ostream&) in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::error::abort() in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 in "/home/mayank/OpenFOAM/mayank-2.1.1/platforms/linux64GccDPOpt/bin/simpleCoupledKinematicParcelFoam" #3 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" #4 in "/home/mayank/OpenFOAM/mayank-2.1.1/platforms/linux64GccDPOpt/bin/simpleCoupledKinematicParcelFoam" Aborted (core dumped) I don't understand where to remove this error. I checked I removed field 'T' from everywhere within the solver. I have also attached a copy of modified steady state Lagrangian solver. Please advice me. Regards, Mayank |
|
August 20, 2013, 15:44 |
|
#40 |
Member
India
Join Date: Oct 2012
Posts: 84
Rep Power: 14 |
I removed the above error....I made a mistake while editing the solver.
Thanks again for transient two way coupled solver. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Particle tracking results are nonsense | Paul | FLUENT | 16 | October 17, 2019 15:12 |
Water subcooled boiling | Attesz | CFX | 7 | January 5, 2013 04:32 |
Check particle impaction with User Fortran | Julian K. | CFX | 3 | January 12, 2012 10:46 |
massless particle tracking problem | Renold | FLUENT | 0 | January 26, 2011 15:23 |
A model is used to model particle interaction with the geometry | dungsidietquy | FLUENT | 0 | November 4, 2009 17:05 |