Archimedes or ArchimedesIB forces problem

Submitted by mofazli on Fri, 04/17/2020 - 04:14

Hi everybody,
I am working with ArchimedesIb force in cfdemSolverIB, however, it seems that the code is giving me the wrong value. As you can see in the ArchiumedesIB.C and ArchimedesIB::setForce() (Line 113), the buoyancy force is calculating by
force += -g_.value()*forceSubM(0).rhoField()[cellI]*particleCloud_.mesh().V()[cellI]*(1-voidfractions_[cellI]);
Which needs forceSubM(0).rhoField()[cellI]. By going into the forceSubModel.C and its line 545, it is detected that the rhoField(0 is equal to rho_, which is indeed the fluid density!!! Until now, all the things seem to be in it the right way. However, by looking at the liggghts dump file which is generated by:
dump dmp all custom 100 ../DEM/post/dump.liggghts_run id type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius f_dragforce[1] f_dragforce[2] f_dragforce[3]
and looking at the fz and f_dragforce[3] values, which is the force summation of each particle (indeed the particle buoyancy minus drag force) and drag force value on each particle Respectively, and considering their value in first run, it is detected that the drag force value in the first calculation is equal to zero, and fz is only the buoyancy force=rho*V_s*g. However, the density value is equal to the solid density value in this calculation!!!
So please help me what is wrong with that?
Best,
Mo

Nico | Wed, 08/05/2020 - 14:40

Dear Mo,
I have seen the same problem you state here. Have you found the explanation/solution yet?

Best
Nico

Nico | Wed, 08/05/2020 - 16:49

Hi Mo,
I think I figured it out.

When you consider the Archimedes force (at least on the Immersed Boundary method I've tested), the value of f_dragforce[3] consider also the buoyancy force.
So, when you calculate fz - f_dragforce[3] you are only considering the force due to the particle mass. That's why you only obtain the particle density.

To get the real drag force, you need to remove the force duo to buoyancy in f_dragforce[3].

I believe that's the explanation for your problem.

You can test what I said by removing the Archmedies force in the Coupling dictionary and checking the difference between the drag forces you obtained.

Cheers
Nico

mofazli | Thu, 08/06/2020 - 10:40

Hi Nico,
I hope you are well. Yes. ou are right. The f_dragforce[3] is the force coming from CFD which is the summation of buoyancy and fluid-particle interaction forces. This force, based on Newton formulation in DEM, is subtracted from particle mass (rho*V_s*g), which finally gives us fz. So, in my first run, owing to f_dragforce[3] zero value fro CFD, it just has particle mass. Thank you for your help. If you are interested, send me an email(mohammad.fazli@monash.edu). I wanna get familiar which type of simulation are you doing through cfdemSolverIB.
Cheers,
Mo