Boundary Conditions for Multispeed(Higher-Order) Lattices

Hi, this is my first thread and nice to meet you all!

I want to use the D2Q25-ZOT (zero-one-three) lattices introduced by Chikatamarla and Karlin on Physical Review E 79,046701(2009) for 2 dimensional Lid-Driven Cavity problem.

At my first attempt to solve this, I was using the Half-way bounce back BC just like when we use the D2Q9 lattices. Unfortunately, the results is kinda weird and unphysical even for moderate Reynolds number.

Now, I realize that the problem is on the BC, one have to use the BC such as in Physical Review E 90,043306(2014) rather than the bounce-back which is an extension of the Tamm-Mott-Smith (TMS) BC along with the Malaspinas’ “Regularized Boundary Condition”. From those papers, I conclude (with a little doubt) that the steps are:

  1. evaluate the derivatives of velocity and temperature on target nodes with finite-difference.
  2. evaluate the non-equilibrium and equilibrium distribution function at target nodes.
  3. compute fi’ (equation 93 on PRE 90 043306)
  4. replace the distribution function fi such as fi = fi + fi’(target) - fi’(local)

Hence, I will summarize my problem in two questions,

  1. Did I missed something here? because this is a new thing for me as I am used to implement the common boundary conditions only(bounce-back, half-way bounce-back, periodic) and I am pretty confused when choosing which are target nodes, and which are local nodes particularly on D2Q5-ZOT lattices facing the north, south, west, and east walls.

  2. How to implement those steps exactly in my code? the reason is similar to question number one.

Feel free if you want to ask me about details and want to read those papers. You can write down your e-mail here or contact me personally at and I will give you everything you need.

Any kind of help would be appreciated.


Hello diptokoplo,

today I have been trying to implement Dirichlet boundary conditions on a D1Q5 lattice. Surprisingly all LBM books go quiet on this topic and google searches have not provided me with any usable results so far.

Currently I have proceded by using the “Inamuro” approach at the first node near the boundary, and then used linear interpolation at the second node from the boundary. The results for some simple 1D cases look ok, but I have done no numerical analysis on the accuracy of this approach.

For a D1Q5 lattice with velocities {0,1,-1,2,-2} numbered from 0 to 4, at the left boundary, I could describe my approach as:

  1. Calculate missing concentration at node 0 as: C’ = (f_0 + f_2 + f_4)/(w_1+w_3)
  2. Apply missing populations at node 0 as: f_1 = w_1C’, f_3 = w_3C’
  3. Interpolate missing population at node 1 from populations at nodes 0 and 2: f_3(1) = 0.5*(f_3(0) + f_3(2))

I will now go on to read the papers you mentioned. In case you have confirmed your thoughts on this topic in the meantime I would be very grateful if you could help me out.

Best regards,