Advice on which grid refinement technique


I am currently working on grid refinement and initially it seemed a good idea to use regularized LBM for this, however, I am starting to doubt this was a good choice. Every time I have to convert from coarse to fine and vice versa I have to compute the off-equilibrium momentum flux tensor Pi^(neq), which is not a very cheap operation, but still acceptable. Now I have come to the part to do temporal interpolation of the coarse Pi^(neq) to obtain an appropriate Pi^(neq) for the fine grid. For linear interpolation we have to store the distribution functions, densities and velocities of two time steps. But Jonas Latt suggest to use quadratic interpolation in his thesis, because LBM is secondary-order accurate method. But this would mean I would have to store the distribution functions, densities, velocities of three time steps. Because of parallelization issues, it is difficult for me to store only the values for the interface between coarse and fine, meaning I have to store a huge amount of data. Also recomputing Pi^(neq) from the distribution functions with quadratic interpolation is becoming serious expensive, perhaps diminishing the advantages I would have expected of grid refinement.

Because of all the above issues I have given myself two options. The first is, forget about quadratic interpolation and stick with linear interpolation. Although my simulation is mainly tuned for speed, I do not want to sacrifice too much on accuracy. My question is, will my simulation now have a strong first-order error in it, or not? What are the exact consequences of only doing linear interpolation?
My second option is to abandon this technique of grid refinement and recourse to a grid refinement technique that does not require any interpolation. I have found two fairly new papers that accomplish this [1, 2]. The technique in [1] is quite understandable and as far as I can see now computationally and memory efficient (I hope I have this right this time). They are reporting some fluctuations in the velocity profiles, which is why I had my drawbacks of initially choosing this one. I found the technique in [2] very poorly explained (horrible paper to read) and they only provide one test, which is why I have even more drawbacks on this technique (although they are not reporting things like velocity fluctuations).

I could really use some advice on how to proceed now. Continue with regularized LBM with linear interpolation or go for either the technique presented in [1] or [2]? And why?


[1] Rohde, M., D. Kandhai, J. J. Derksen, H. E. A. van den Akker. A generic, mass conservative local grid refinement technique for lattice-Boltzmann schemes. International Journal of Numerical Methods in Fluids, vol. 51, Issue 4, pp.439-468
[2] Chen, H., O. Filippova, J. Hoch, K. Molvig, R. Shock, C. Teixeira, R. Zhang. Grid refinement in lattice Boltzmann methods based on volumetric formulation. Physica A: Statistical Mechanics and its Applications Volume 362, Issue 1, 15 March 2006, Pages 158-167

Dear Bart

I Hope u come to conclusion that which technique is best one.
i want to go on grid refinement which technique u suggest? and i have some question about Rhode’s method i will ask if it was possible for you to answer me.


Hello Sajad,

Actually I haven’t received any replies, so I am afraid can’t help you much. I decided to stick with my current implementation and use linear interpolation.

If you find out more about this subject (now or in the future), it would be interesting to know what you found.