High density/viscosity ratio Free Energy method
OpenLB – Open Source Lattice Boltzmann Code › Forums › on OpenLB › General Topics › High density/viscosity ratio Free Energy method
 This topic has 4 replies, 3 voices, and was last updated 1 week, 4 days ago by Michael Rennick.

AuthorPosts

May 9, 2023 at 1:12 pm #7451Amirmansour JafariParticipant
Dear OpenLB community,
Can the Free Energy method in the latest version of OpenLB software (Ver. 1.6) handle immiscible twophase flow problems with high density and viscosity ratios? If not, what complexities would be required to define these conditions within the current code? Thank you for your guidance in this matter.
Sincerely,
AmirmansourMay 10, 2023 at 5:36 pm #7453Michael RennickParticipantDear Amirmansour,
Unfortunately, the current implementation of the free energy method is not capable of handling high density or viscosity ratios.
For high viscosity ratios, a possible solution would be to introduce a variable relaxation time that depends on the concentrations. OpenLB offers an implementation of dynamics with variable relaxation times, so this could be used to solve the density and velocity fields. However, implementing this for the Free Energy method would require defining a specific coupling between the different distributions and specifying a dependence of the relaxation time on the concentration.
Regarding the density ratio, the current model assumes constant densities for all phases. Modifications to the model would be necessary to accommodate phases with different densities. Numerical stability is also a concern, and there are several approaches to address this issue, each with their own nuances. As a result, incorporating high density ratios would be considerably more complex.
Best wishes,
MichaelMay 13, 2023 at 8:16 am #7460Amirmansour JafariParticipantThanks for your informative and valuable explanations. Best regards.
May 18, 2023 at 3:26 pm #7465mehrdadvasheghanifarahaniParticipantHi Michael,
As far as I know, the relaxation time of the hydrodynamics lattice for the fluids with two different viscosities can be accounted using this equation: 1 / tau_f = c_1 / tau_1 + c_2 / tau_2.
Would you please advise how the dynamics can be implemented using variable relaxation time? Is there any specific example that I can look into to learn how to implement this? Thanks.
Kind regards,
MehrdadMay 24, 2023 at 5:48 pm #7479Michael RennickParticipantHi Mehrdad,
I believe that expression is correct. OpenLB uses relative concentrations through an order parameter defined as ϕ = (c1 – c2) / (c1 + c2), where c2 = 1 – c1. The expression would have to be rescaled in terms of the order parameter. We normally use a simple linear transition of 0.5*(1+ϕ)*(tau1)0.5*(1+ϕ)*tau2. In LBM, the BGK collision operator would just become 1/tau_f from your expression above.
The squareCavity2d example uses variable relaxation times but for a very different application. ExternalTauEffLESForcedBGKdynamics is used for the NavierStokes solver on line 193, although for the free energy, you would probably use ExternalTauEffIncForcedBGKdynamics. They define a coupling on line 607 using SmagorinskyBoussinesqCoupling. This is defined in src/dynamics/navierStokesAdvectionDiffusionCoupling and has an implementation of variable relaxation times, although this is different from the approach needed in the Free Energy Model. You would have to define your own coupling class that accepts tau1 and tau2 as parameters and sets the relaxation time for the NavierStokes solving lattice using the order parameter (I think this is still defined as rho) in the second lattice. You could try and test this with any of the multiComponent examples, as everything else should be the same.
I haven’t implemented anything with dynamic relaxation times myself in OpenLB, so someone else might be better suited to answering this.
Best wishes,
Michael 
AuthorPosts
 You must be logged in to reply to this topic.