Initialization for DNS - channel case

Hi all,

I have problem in initialization in channel case using LBM. My LBM channel case is working very well for laminar flow but when i try to change to DNS it is not working. I guess my initialization method for DNS is wrong. Do you have any idea how to overcome this problem?

Please Help



It is a bit difficult to give an answer to your problem. I guess that you are trying to solve a turbulent channel flow without any turbulence model. First are you sure you are resolved enough for your problem? If you are too much underresolved then a numerical instability will appear. If you are indeed resolved enough then could you give more details about your simulation setup : resolution, u_max, Re, tau, … What kind of boundary conditions are you using?


Let me continue the topic … I have similar problem ie. the turbulent simulation in 2D channel crossection… I would like to find a velocity profile for a flow between two plates… Thus assume 2D channel and D2Q9 BGK model. I do not want introduce any turbulent models since it should be the LBM to verify turbulent models – the DNS (direct numerical simulation)

[A] Is there any fundamental limitation for high Reynolds number flow modeling using LBM ? I haven’t found any except grid resolution.

Assuming that there is no any limitation my simulation is as follow:

Mesh 602 (flow direction) x 602
Time steps: 3.5e+6

Boundary Conditions:
Inlet/Outlet: periodic
Side walls: bounce back
Initial Conditions:
Distributions in are set to have non 0 x-direction velocity. The velocity gives the Re=5000 ca…

During simulation the Y -velocity component is beeing relaxed, no forcing terms.

LBM model parametrs
(Lx x Ly x Lz)~Re^(9/4) ? (Lx x Ly)~Re^(6/4) ? Lx x Ly ~ (353E+3 points)–>ca. 600 x 600 grid
Time resolution ~ dt~dx^2 ? (Nt=350e+3 points)
viscosity: visc=(dt/dx^2)*1/Re [1]: visc=0.000020571
where dt=1/Nt, dx=1/Lx (Nt- lbm time steps, Lx grid points along flow direction)
Mach number E_Ma~dt/dx [1]: E_Ma= 600/3.5e+6=0.026 which is close to the value adviced in [4] ulb=0.02
fulfilled relation dt~dx^2 [1]

Relaxation Factor:
tau=visc/cs^2+0.5=0.000020571*3+0.5=0.500061714 ? omega=1/tau=1.99975, which is v. close to 2 !!!

[1] Jonass Latt Phd Thesis “Hydrodynamic limit of lattice Boltzmann equation”
[2]Jonas Latt at al. “Numerical Analysis of the Averaged Flow Field in a Turbulent Lattice Boltzmann Simulation” preprint submitted to Elsevier Science, 2004
[3] Dustin Bespalko, Andrew Pollard, Mesbah Uddin “Direct Numerical Simulation of Fully-Developed Turbulent Channel Flow Using the Lattice Boltzmann Method and Analysis of OpenMP Scalability” , presentation
[4] Jonass Latt “Choice of units in lattice Boltzmann simulations
” 2008

My questions

[B] Are assumptions/calculation correct ?
[C] Did anyone such simulation and could present even qualitative results ? I wonder how LBM compares with eg. k-epsilon model concerning velocity profiles

Thanks in advance for any advice


Dear Janusz,

I guess there are no limitations in terms of DNS for the LBM, as far as you can refine your grid. However, a few things should be fulfilled as velocity not too high, usually u<0.2 for stable simulations, tau parameter is not too close to 2 due to stability issues as well. Basically by refining your grid and playing with tau and velocity parameters you can always resolve the flow. In practice, if your grid number is too high then you have a really small delta t because of the explicit nature of the LBM and simulations become impractical due to high computational demand.

I saw some simulations of k-epsilon spectrum for entropic LBM. You can try to google Karlin publications.

Hopefully it will help,