VISCOUS FLUID FLOW MODELING WITH THE LATTICE BOLTZMANN METHOD ON GRAPHICS PROCESSORS USING WebGL API
Abstract
This work is dedicated to the modeling methodology of a viscous fluid flows with the lattice Boltzmann method on graphic processors based on the technology of images rendering in web browsers WebGL. A two-dimensional nine-velocity LBM model (D2Q9) with a collision integral in a Bhatnagar-Gross-Kruk approximation form is shown. The possibilities of calculation acceleration using WebGL technology is described, namely features of using textures to contain values of some physical quantities in numerical algorithms and using fremebuffers to storage the textures, influence of the texture parameters on the numerical algorithms, features of shaders programming. The questions of shader programs using for carrying out stages of physical modeling were considered. The proposed methodology was used to develop an original web program for modeling of classical test problems. Simulations of the Poiseuille flow in a plane channel and the flow around a circular cylinder in a plane channel were performed. The obtained results were compared with the results of calculations performed in the original verified modeling program based on the lattice Boltzmann method and in the Comsol Multiphysics package with the finite element method. Comparisons of the values of the velocity magnitude showed the consistency of the obtained results with the data of other numerical experiments. The analysis of computational speed in comparison with modeling using the optimized algorithm of a method with use of the technology of parallel calculations on CPU OpenMP in the original program is carried out. It is shown that the acceleration of calculations depends on the number of cells of the calculation grid. The results of the fluid flow modeling around a circular cylinder at Re = 1000 are demonstrated, which are obtained 30 times faster than with the calculations obtained with optimized lattice Boltzmann method and OpenMP technology.
References
Wolf-Gladrow D. Lattice-Gas Cellular Automata and Lattice Boltzmann Models – An Introduction. Bremerhaven: Alfred Wegener Institute for Polar and Marine, 2005. 311 p.
Succi S., Benzi R., Higuera F. The lattice Boltzmann equation: a new tool for computational fluid-dynamics. Physica D. 1991. 47. P. 219–230.
Succi S. The lattice Boltzmann equation for fluids and beyond. Oxford: Oxford University Press, 2001. 290 p.
Belotserkovsky О.М., Davudov U.M. Large particle method in gas dynamics. М.: Science, 1982. 392 p.
Bandman O.L. Cellular-automatic models of natural processes and their implementation on modern computers. Applied discrete mathematics. 2017. № 35. P. 102-121.
Guo Z., Zhao T.S. Lattice Boltzmann model for incompressible flows through porous media. Phys. Rev. E Stat. Nonlinear Soft Matter Phys. 2002. Vol. 66. P. 036304-1–036304-9.
Derksen J.J. The lattice-Boltzmann method for multiphase fluid flow simulations and Euler-Lagrange large-eddy simulations. Multiphase Reacting Flows: Modelling and Simulation. 2006. Vol. 492. P. 181–228.
Kupershtokh A.L. Lattice Boltzmann method for modeling of two-phase liquid-vapor systems. Modern science. 2010. Vol. 4, № 2. P. 56-63.
Turinov А.I., Avramenko А.А., Basok B.I., Davudenko B.V. Modeling of microcurrents with the lattice Boltzmann method. Industrial heat engineering. 2011. Vol. 33, № 2. P. 11-18.
Li W., Wei X., Kaufman A. Implementation lattice Boltzmann computation on graphic hardware. Visual Computer. 2003. 19. P. 444–456.
Wei X., Muller K., Li W., Kaufman A. The Lattice-Boltzmann Method for Simulation Gaseous Phenomena. IEEE transactions on visualization and computer graphics. 2004. V. 10, no. 2. P. 164–176.
Bikulov D.А. , Senin D.S., Demin D.S., Dmitriev А.V., Grachev N.Е. Implementation of the lattice Boltzmann method for calculations on a GPU cluster. Computational methods and programming. 2012. Vol. 13. P. 13-19.
Kupershtokh А.L. Implementation of the lattice Boltzmann method on multiprocessor graphics accelerators for 3d modeling of two-phase liquid-vapor systems. Modern science. 2011. Vol. 7, № 2. P. 112-118.
Obrecht C., Kuznik F., Tourancheau B., Roux J. Multi-GPU implementation of the lattice Boltzmann method. Computers and Mathematics with Applications. 2013. 65. P. 252–261.
Sucop M.C., Thorne D.T. Lattice Boltzmann modeling. An introduction for geophysics and engineeres. Miama: Springer, 2006. 173 p.