2D Multiphase flow example

Dear all,

I’m presently starting with multiphase modelling in LBM, and I would like to model gas bubbles in a liquid. Can you advice me any good source (paper, book,…), though that I can see, if I’m missing any good sources on that!?

Furthermore, can you provide me with a simple 2D sample code (any language or mathlab) whereI can get a picture of the implementation? I thought of an example like “2D droplet falling into water”, but up to now my search on the web didn’t succeed… please, can anyone provide me an example?

Best Regards,

I recommend Taehun Lee’s work.


I have also started to work on multiphase modelling in LBM. I am following the work by Teahun Lee. I have some doubts regarding the implementation of the method:

  1. The formulation uses second order mixed discretization of the directional derivatives for the domain, but what treatment must be done at the boundary points. I mean how shall I implement the second order mixed at the boundary points?

  2. There is a formulation given for derivatives other than directional derivatives. How shall I implement this at the boundary and corner points? As I do not know the values of the macroscopic variables for points outside the domain, which is required for calculation.

Can anyone help me with the required information? It will be really helpful for me.

Thanks in advance.


As far as I know, the ‘best’ way to implement boundary conditions in such models is still up for debate. I think some of Lee’s more recent work discusses this a little, but I bet there is still a lot that needs to be determined.

The mixed (compact) derivatives allow for more stable and accurate computations in the bulk, but they could certainly add complications at the boundary. The Lee-Fischer model is based on a second order (in time) discretisation of the discrete-velocity Boltzmann equation (ie, it uses the Crank-Nicoloson/Trapezium method), as opposed to the more common Forward-Euler method. If one used the same ideas of Lee in the sense of the forcing term, but discretised the PDE using forward Euler then there would be no need for the variable transformation (which turns an implicit system into an explicit one), which would probably mean there is no need for the mixed derivatives. However, I’m not sure what effect this will have on the method (other than the algorithm will be an order less accurate in time). If a forward-Euler method can be employed then the boundary condition problem is no different to any other multiphase LBE, because they all seem to need a finite difference approximation to the interface or surface tension/curvature term (but it’s always difficult, especially of you don’t know what the macroscopic boundary values should be a-priori).

Another possibility would be to convert from the transformed variables (ie the ones used in Lee’s LBE) back to the original variables (ie the ones that appear in the the discrete velocity Boltzmann equation), apply the boundary conditions, and then convert back into the transformed variables; although this would seem rather cumbersome. It would seem likely that having ‘ghost’ nodes inside a boundary, or working out a one-way stencil for the derivatives, would be possible (in some sense similar to how people treat boundaries in standard finite difference methods), but I’m not sure if anyone has looked at it in detail. In short, it’s a difficult but interesting problem, and I’m sorry I can’t be more helpful!

Good luck!

Thanks Tim, for your advice. I found Lee’s recent paper (2010) in which he has discussed some of these issues. But I need to see how I implement them in my code.

Thanks again for your suggestions.



I have been following Taeuhun Lee's work trying to simulating the basic validation case of a static bubble. Apart from density and velocity, an initial condition for pressure must also be given for this method. What should be the initial pressure which I must take in this case ? Since sigma and radius parameter are the input parameters I can find the pressure difference from Laplace law.

I have written the code but it is diverging for some reasons. If anyone has used this model, please let me know. I would like to discuss with you.


Can anyone suggest how gravity and buoyancy force are added to a drop and bubble respectively?? I am using the phase field model by Lee. Is it added only to a single phase and hence is to necessary to track the density points to which this force is added?

Thanks in advance