Skip to content

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

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #7451
    Amirmansour Jafari
    Participant

    Dear OpenLB community,

    Can the Free Energy method in the latest version of OpenLB software (Ver. 1.6) handle immiscible two-phase 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,
    Amirmansour

    #7453
    Michael Rennick
    Participant

    Dear 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,
    Michael

    #7460
    Amirmansour Jafari
    Participant

    Thanks for your informative and valuable explanations. Best regards.

    #7465

    Hi 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,
    Mehrdad

    #7479
    Michael Rennick
    Participant

    Hi 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 re-scaled 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 Navier-Stokes 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 Navier-Stokes 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

Viewing 5 posts - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.