Hi cfdemers,
Has anyone developed the added mass force?
Since du/dt (for fluid phase) has to be calculated, I wonder whether uprev and unext should be calculated and stored as well.
Do you have any better idea? Thanks in advance.
rq
A project by DCS Computing and CFDEMresearch
This website uses cookies to ensure you get the best experience on our website. By continuing to browse the site you are agreeing to our use of cookies. This website uses cookies. By continuing to browse the site you are agreeing to our use of cookies. More info
cgoniva | Fri, 05/27/2011 - 12:41
Hi rq! You mean virtual mass
Hi rq!
You mean virtual mass force (force due to acceleration of the surrounding fluid)?
This seems to be a very interesting topic - have not had time to implement sth like that.
Cheers,
Chris
cgoniva | Fri, 05/27/2011 - 15:20
Dear cfdem users, the latest
Dear cfdem users,
the latest cfdem release now comes with a virtual mass force model.
The model is not tested yet, please feel free to do so and give us a feedback.
The usage is explained in the settlingTestMPI testcase.
Cheers,
Chris
rqwang | Thu, 09/29/2011 - 03:36
Hi Chris, Thank you for
Hi Chris,
Thank you for updating the code with virtualMassforce.
Adding this force makes my simulation unstable. I am thinking of the derivative of V_rel is an appropriate replacement of DV_f/Dt-dVp/dt
Please check it.
Thanks.
rq
cgoniva | Thu, 09/29/2011 - 07:34
Hi! Did you try this change
Hi!
Did you try this change on your own and get better results with it?
Cheers,
Chris
rqwang | Thu, 09/29/2011 - 14:03
Hi Chris, Yes, I have tried
Hi Chris,
Yes, I have tried by my own. The virtual mass force just go to a very large number, which crashed my simulation.
Thanks.
rq
cgoniva | Sat, 10/01/2011 - 14:55
Hi! Thank you, it would be
Hi!
Thank you, it would be great if you could send me your version of the code, then I can put it into the next release update.
(I actually never worked with v.m.f., so I am happy for any feedback on that ;-)
Cheers,
Chris
rqwang | Fri, 10/07/2011 - 21:37
Hi Chris, I think we just
Hi Chris,
I think we just need to add two terms to complete the material derivative, sth like:
virtualMassForce = 0.5 * rho * Vs *(ddtUrel + fvc::div(phi,U_[cellI]) - fvc::div(phi_s,Us))
Could you help me modify the code like above?
Thanks.
rq
ckloss | Sun, 10/09/2011 - 10:00
Hi rq, see cfdemParticle /
Hi rq,
see cfdemParticle / subModels / forceModel / virtualMassForce / virtualMassForce.C
The force is calculated in void virtualMassForce::setForce()
Cheers, Christoph
rqwang | Mon, 10/10/2011 - 00:41
Hi Chris, Do you need me to
Hi Chris,
Do you need me to modify the code?
I have a difficulty that I don't know how to introduce the flux phi into the code in order to calculate the convection terms in the material derivatives. Could you give me some clue?
Thanks.
rq
ckloss | Mon, 10/10/2011 - 12:48
Chris is currently out of
Chris is currently out of office for the next 3 weeks and will be checking by infrequently if at all.
I will forward your question - probably Alice can answer this better than me.
Christoph
rqwang | Sun, 10/16/2011 - 04:17
Hi Alice, I found the
Hi Alice,
I found a bug in the virtualMassForce model, which overflow my simulation.
I found this is caused by this line:
UrelOld_[index][j] = Ur[j];
It looks the memory is not well managed.
Could you check it for me?
As well, a related question:
why is the UrelOld_ defined by mutable double **UrelOld_ in H file?
Thanks a lot.
rq
ckloss | Sun, 10/16/2011 - 09:07
>>Could you check it for
>>Could you check it for me?
without a test case unfortunately not, could you please debug that on your side by running valgrind.
Christoph
rqwang | Sun, 10/16/2011 - 15:08
Hi Christoph, Thank you for
Hi Christoph,
Thank you for your help. I have never used valgrind. I will give a try.
Now, I added a variable to the particleCloud, i.e. particleCloud.UrelOld
I can call the function without problem.
I want to use this variable to store the old relative velocity for next time step, but this variable is reset to zero in the next time step.
Could you tell me how to keep the value of particleCloud.xxxx without updating or resetting?
Thanks.
rq
alice | Sun, 10/16/2011 - 16:24
hello, actually, right before
hello,
actually, right before the functions for setting all fields like velocites_, voidfractions_ etc. are executed, the fields still contain the old values. (I understand that UrelOld lives in the same level as these fields?)
Maybe you can have a look at your field at different places to check out, where the resetting takes place.
Cheers,
Alice
rqwang | Sun, 10/16/2011 - 18:07
Hi Alice, You are right. I
Hi Alice,
You are right. I put UrelOlds_ in the same level as velocities_ etc.
I think the way to change the value of UrelOld might be wrong in my case, i.e.
particleCloud_.UrelOld(index) = Ur;
This function didn't change the value of UrelOlds_, since particleCloud_.UrelOld(index) just calls the function.
Now I change the access property of UrelOld_ to public and update the value directly by
particleCloud_.UrelOlds_[index] = Ur;
It works well so far.
Thanks.
rq
rqwang | Sun, 10/16/2011 - 16:25
Hi Christoph, I put the new
Hi Christoph,
I put the new variable UrelOlds_ into public of particleCloud. (I believe not the best solution)
It works so far.
Thanks and hope this bug can be fixed in new version.
rq
cgoniva | Thu, 10/27/2011 - 17:26
Hi rq,probaly you could come
Hi rq,
probably you could come up with a new forum entry on that topic including the literature ref. of your model.
To be honest, it is not totally clear to me what you tried to implemented / implemented in the end and why you need the old values
:-)
Cheers,
Chris
rqwang | Sun, 10/16/2011 - 05:44
Hi Alice, Another question,
Hi Alice,
Another question, now I try to add UrelOld in cfdemCloud. So every time I can update particleCloud.UrelOld(index) by Ur. But I found in every new time step, particleCloud.UrelOld(index) is reset to (0,0,0).
Could you tell me how to keep the old value of particleCloud without resetting?
Thanks.
rq
alice | Mon, 10/10/2011 - 13:08
Hi, in order to calculate the
Hi,
in order to calculate the flux you' re gonna need the data from the previous time step. As far as i know you should be able to access it using [your volVectorField].oldTime()
Hope this helps...
Best,
Alice
rqwang | Fri, 10/14/2011 - 04:36
Hi Alice, I try to write
Hi Alice,
I try to write div(phi_,U_) in virtualMassForce.C, but the compiler gave me the error like
no matching function for call to 'div(const volVectorfield&,const volVectorfield&)'
Do you have any idea to overcome?
Thanks.
rq
alice | Fri, 10/14/2011 - 08:42
Good morning, the function
Good morning,
the function div is an OF function that lives in the fvm-namespace, so you can call it by writing fvm::div(). (cf. the use of div, laplacian etc. in the solvers...).
Cheers,
Alice
rqwang | Fri, 10/14/2011 - 22:48
Hi Alice, Both of fvm::div
Hi Alice,
Both of fvm::div and fvc::div give the same error message as my last post.
Do you have any idea?
Thanks.
rq
rqwang | Sat, 10/15/2011 - 02:35
Hi Alice, I found the mistake
Hi Alice,
I found the mistake is the definition of phi.
It should be surfaceScalarField instead of volVectorField.
Thanks.
rq
cgoniva | Thu, 10/27/2011 - 17:14
Hi rq, could you please tell
Hi rq,
could you please tell us the refernce where we can find above equation?
Cheers,
Chris
Roger | Tue, 05/19/2015 - 15:17
Virtual mass references
Dear CFDEM developers,
searching about the virtual mass force implemented in CFDEM I found the reference of the equation proposed above by rqwang: Crowe, Clayton T.; Sommerfeld, Martin; Tsuji, Yutaka (1998). Multiphase flows with droplets and particles. CRC Press. I thought it would be helpful for the completeness of the thread.
And now the question ;) In this source, a nice derivation of the equation is given. However, this equation is only valid for inviscid fluids. For viscous fluids, a virtual mass coefficient proposed by Odar and Hamilton (1964) is recommended. A complete description of the virtual mass force, the virtual mass coefficient and a parameter called acceleration number may be found in: Sommerfeld, Martin; van Wachem, Berend; Oliemans, René (2008). Best Practice Guidelines for Computational Fluid Dynamics of Dispersed Multi-phase Flows. ERCOFTAC. I was wondering if you have considered the implementation of this model?
Best regards,
Roger
Roger | Fri, 05/15/2015 - 12:14
Virtual mass references
Dear CFDEM developers,
searching about the virtual mass force implemented in CFDEM I found the reference of the equation proposed above by rqwang: Crowe, Clayton T.; Sommerfeld, Martin; Tsuji, Yutaka (1998). Multiphase flows with droplets and particles. CRC Press. I thought it would be helpful for the completeness of the thread.
And now the question ;) In this source, a nice derivation of the equation is given. However, this equation is only valid for inviscid fluids. For viscous fluids, a virtual mass coefficient proposed by Odar and Hamilton (1964) is recommended. A complete description of the virtual mass force, the virtual mass coefficient and a parameter called acceleration number may be found in: Sommerfeld, Martin; van Wachem, Berend; Oliemans, René (2008). Best Practice Guidelines for Computational Fluid Dynamics of Dispersed Multi-phase Flows. ERCOFTAC. I was wondering if you have considered the implementation of this model?
Best regards,
Roger