CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Bugs (https://www.cfd-online.com/Forums/openfoam-bugs/)
-   -   TwoPhaseEulerFoam and the ppMagterm (https://www.cfd-online.com/Forums/openfoam-bugs/62472-twophaseeulerfoam-ppmagterm.html)

hemph February 23, 2007 06:34

One more! I am using twoPhase
 
One more!
I am using twoPhaseEulerFoam to simulate packing, which is very dependent on the particle-particle forces included in OF as ppMagf.

The current implementation of the particle-particle forces (in alphaEqn.H) uses the alpha value on the faces to calculate the ppMagf term as (psuedo code)

alphaf = fvc::interpolate(alpha);
ppMagf = exp( C*(alphaf - alphaMax) );

I will not elaborate here, but in short this expression is very numerically sensitive close to and above the packing limit.
I have found the following approach to be (substantially) more reliable.

ppMag = exp( C*(alpha - alphaMax) );
ppMagf = fvc::interpolate(ppMag);

I.e,. the force term is interpolated to the faces instead of alpha. This allows the forces to act earlier as the cell fills up and limits the unphysically high forces which otherwise develops (when alphaf is used). I would appreciate a comment on this approach!

Best Regards
Rasmus Hemph

alberto February 23, 2007 16:44

Hi Rasmus :-) The role of p
 
Hi Rasmus :-)

The role of ppMagf is to avoid over-packing. Authors agree in telling its magnitude is not important as far as it prevents the unphysical packing of the dispersed phase and has a negligible effect far from the packing condition.

So, I think your approach is OK. I'm going to try it in some cases which gave me a lot of convergence problems with the current ppMagf implementation. A case is running right now.

Regards,
Alberto

hemph February 26, 2007 04:23

Hi Alberto! I appreciate you
 
Hi Alberto!
I appreciate you trying the new formulation. I am curious to see how it behaves for cases other than packing.

Rasmus

alberto February 26, 2007 05:20

Hi Rasmus, I completed the fi
 
Hi Rasmus,
I completed the first simulation. I'm doing a second one to see if the change to the algorithm influences the solution in some way.

For now, I noticed a great improvement in the stability of the solution. With the previous one I could not get convergence with dt = 1.0e-5s while now it's OK.

If the tests will confirm this, I'm thinking to do some experimentation with the kinetic theory implementation too, which is still very unstable when alpha -> alphaMax.

Regards,
Alberto

hemph March 5, 2007 04:25

Glad to see it is improving th
 
Glad to see it is improving things for fluidized bed simulations as well (it should!). The problem about using alpha at the faces in the particle packing-force-calculation is easy to show for a case of settling particles.

Consider the bottom two cells in a 1D-settling simulation. As included in the current version of twoPhaseEulerFoam, the pp-forces are calculated at the faces as

alphaf = interpolate(alpha)
ppMag = exp(C(alphaf-alphaMax))

Normal values of alphaMax and C is 0.6 and 600, meaning that the forces should start to act at 60% particles and increase exponentially. The meaning of this term is to limit the maximum of alpha to approximately 0.62-0.65. However, as is shown in the picture, the approach of interpolating alpha to faces is faulty for cases of settling, and unstable in other cases.
http://www.cfd-online.com/OpenFOAM_D...s/126/3932.png
At time step 1, the bottom cells is at alpha=0.6, but the value of alpha at the face is still at 0.45, so no forces act to stop packing. At time step 2, the value of alpha in cell center is at 0.75, which, by interpolation gives a alpha at 0.6 at the face, and packing finally seizes. The volume fraction is not only much to high, but the flow field is very unstable (in dimensions higher than 1) due to the large forces for large volume fractions.

//Rasmus


All times are GMT -4. The time now is 02:28.