Gas-liquid turbulent flows with LBM
April 19, 2019 at 2:33 pm #4255
I am currently studying gas-liquid flow patterns using the lattice-Boltzmann method. Since both phases are expected to attain turbulent regime (Re around 1e5) in a range of situations, I am using the LES-Smagorinsky model, coupled with an MRT collision operator, for both liquid and gas phases.
The code works, but stability is a major issue. I have the impression this is mostly because relaxation frequencies are way too close to 2, but high velocities (>0.2) occur as well.
My latest ideas, which I will try soon, are:
– Using an equilibrium distribution function up to o(Ma^3) or o(Ma^4), to reduce trouble with high velocities.
– Using regularized-MRT dynamics.
I would greatly appreciate any suggestions on how to increase stability. Any useful references or papers on turbulent flows with LBM are welcome, too.
Thank you for your replies!April 25, 2019 at 9:38 am #4269MarcParticipant
I just can guess, because I don’t know your simulation setup. If you want to simulate such a high Reynolds number, you should respect your grid spacing.
How do you estimate your grid spacing?
Do you have a wallbounded flow, if this is the fact what is your y+?
If you grid is to coarse you have to deal with a small tau, which could lead to instabilities.
Do you know where the instabilities occur? (at the boundaries, at the gas liquid Interface…)
You lattice velocitiy is too high, you should avoid lattice velocities higher than 0.1.
-increase your grid size to get a stable simulation
-estimate your smallest scales and adapt your grid spacing again to get physical meaningful results
Best MarcMay 2, 2019 at 10:37 am #4298
Thank you very much for your reply. Mi simulation setup is the following:
– Geometry: straight, cylindrical pipe in 3D.
– Boundary conditions:
– Inlet: plug velocity profiles for liquid and gas, which enter separated (liquid in the lower-half of the inlet, and gas in the upper half). I use a ‘velocity-BB’ rule like the one implemented in OpenLB.
– Outlet: constant pressure, zero gradient for velocity, using extrapolation rules.
– Walls: no-slip condition via full-way bounce-back.
Resolution and time steps are estimated so that velocity at the inlet is lower than 0.01, and so that the smallest tau of the two phases is higher than a certain value, admittedly very close to 0.5. Increasing grid size is of course always convenient for stability, but I have not found any significant improvement upon using very high resolutions while respecting the stability restrictions.
Contrary to what I thought last week, turbulence does not seem to be the main problem since the model works well with high Reynolds numbers in single-phase flows, even with such small taus.
In fact, following your suggestions I have found that instabilities occur at the interface. Given that I use a free-surface VOF algorithm that is somewhat cumbersome, I will search for possible sources of instability there.
Again, thank you for your answer. Your idea of knowing where exactly instabilities occur has been very helpful.
AurelioAugust 18, 2019 at 4:24 pm #4505
May I ask how you set up constant pressure at the outlet in your multiphase model.
I am currently using shan-chen two compartments, multiphase model. To set up the constant pressure, I use “slatticewater.defineRho(supergeometry,1,rho)”. But undesired results always come out.
Thanks.August 21, 2019 at 9:10 am #4510mgaedtkeKeymaster
defining a constant pressure via the corresponding density at the outlet leads to undesired results, because in the multiphase case your density is linked to the state of your fluid.
In order to allow gas and liquid phase to leave your domain through the outlet, I suggest to define a constant velocity boundary with the flow facing outwards. The inlet should in this case be a constant pressure boundary with the pressure corresponding to the state of the influx fluid.
MaxAugust 22, 2019 at 12:26 am #4518
Unfortunately I am not using the Shan-Chen pseudo potential method, but another approach to multiphase modelling based on the free-surface VOF model by Thürey et al. (you may find it here) which simulates and couples both gas and liquid phases.
As Max has said, implementing pressure boundary conditions for the Shan-Chen multiphase (or multicomponent) model is not easy. The reason is that the Shan-Chen equation of state is as follows:
p = cs2*(rho + dt^2*G*psi(rho)^2/2).
whereas many ‘standard’ LBM schemes have the ideal gas EOS, namely:
p = cs2*rho
OpenLB implements pressure BCs by imposing density, thus assuming that the model’s EOS is the ideal gas one. I have not found any articles that present an acceptable pressure outlet BC for the Shan-Chen model, so I would recommend doing as Max suggests.
Here is an interesting idea by Timm Krüger regarding how to implement an inlet boundary condition in the Shan-Chen model.
Please note that, although I know pseudo-potential models and have worked with them, I am not an expert in LBM. Anyway let me know if you have any other questions and I will try to help.
AurelioAugust 22, 2019 at 9:46 am #4520
Hi Max and Aurelio,
Really thanks for your help. It helps me a lot.
I will try Max’s suggestion and see how it goes. So Can I say that there is no way to set the pressure boundary for both inlet and outlet in Shan-Chen multiphase model?
SimonAugust 22, 2019 at 10:36 am #4521
Since you are trying to set up a multiphase flow, setting pressure both at inlet and outlet will not be enough. You would also have to specify the state of the fluid, preferably at inlet.
If your simulation setup allows for it, maybe you could use periodic borders instead of an inlet/outlet and apply a constant pressure gradient through a body force. But this is only valid in a small number of cases, like the two-layer Poiseuille flow, or if you are considering gravity-driven flows.
AurelioOctober 17, 2019 at 3:10 am #4601
Thanks for your suggestion, I am just wondering about how to set the state of fluid in OpenLb for example if I am using single or two component Shan-Chen model.
SimonOctober 25, 2019 at 2:47 pm #4652
By state of the fluid we mean if it is liquid or gas. For instance, to specify gas state in a given point you assign:
rho = rho(gas)
to that point. In the two component SC model you should assign proper values to both lattices, e.g. if you have components A and B and there is only A at a given point, then:
rhoA = 1 (or whichever reference density you are using)
rhoB = 0
- You must be logged in to reply to this topic.