List Lattice Boltzmann Codes Save

Curated list of some open source codes employing lattice Boltzmann methods

Project README

Open source codes employing lattice Boltzmann methods

A curated list of some open source frameworks, libraries and softwares employing lattice Boltzmann methods. This list is by no means complete. So if you would like me to add something, please send me a link to [email protected] or perform a pull request.


Numerical frameworks


Miscellaneous codes

  • EduLB - an educational C++ code to show the implementation of lattice Boltzmann method by simulating flow over an obstacle in a channel.
  • gLBM [29] - a 3D LBM code implemented using GPUs.
  • LAMBReX - implementation of a lattice Boltzmann code on top of AMReX library for adaptive mesh refinements.
  • LatBo.jl - an code developed in Julia programming language.
  • Lattice-Boltzmann - CUDA implementations of some lattice Boltzmann codes.
  • Lattice-Boltzmann-fluid-flow-in-Tensorflow - a github repository hosting lattice Boltzmann simulation results written in Tensorflow.
  • LatticeBoltzmannMethod - a github repository hosting some excellent codes (C++) showcasing multiphase flows, microflows and immersed boundary-lattice Boltzmann methods to name a few.
  • LBMCode - a FORTRAN90 code solving the shallow water equations to simulate flows in a straight channel.
  • LBM-Cplusplus-A.A.Mohamad - this repository hosts the C++ version of codes implemented from the Appendix of a lattice Boltzmann book [30].
  • LBM-1D - a github repository hosting some simple MATLAB codes to simulate 1D advection-diffusion and Navier-Stokes equations.
  • lbmles - a github repository hosting a 2D lattice Boltzmann code using Large Eddy simulations to solve fluid flow in lid-driven cavity at very large Reynolds numbers. Both CPU and GPU (C++ and CUDA) versions are available.
  • lbm_matlab - a github repository hosting some MATLAB codes showcasing grid refinement, viscosity counteraction approach (for achieving numerical stability), RANS Spalart-Allmaras turbulence model and a few more.
  • lbm-principles-practice - a github repository hosting the codes (C++, MATLAB) used in the lattice Boltzmann book [31].
  • listLBM - an object-oriented programming solver for simulations of multiphase flows in porous media.
  • pylbm - an open source python framework for performing lattice Boltzmann simulations in 1D, 2D and 3D scenarios.
  • 3D-LBM-AMR - a github repository hosting C++ codes showcasing adaptive mesh refinement in 3D problems.

References

  1. Calzavarini, E., Eulerian–Lagrangian fluid dynamics platform: The ch4-project, Software Impacts, Vol. 1, 2019. Link

  2. Mazzeo, M.D., Coveney, P.V., HemeLB: A high performance parallel lattice-Boltzmann code for large scale fluid flow in complex geometries, Computer Physics Communications, Vol. 178 (12), pp. 894-914, 2008. Link

  3. Shealy, B. T. et al., HGPU Acceleration of the HemeLB code for Lattice Boltzmann Simulations in Sparse Complex Geometries, IEEE Access, Vol. 9, pp. 61224-61236, 2021. Link

  4. Závodszky, G. et al., Cellular Level In-silico Modeling of Blood Rheology with An Improved Material Model for Red Blood Cells, Frontiers in Physiology, Vol. 8, pp. 563, 2017. Link

  5. Zhou, X., Ultrasound Imaging Augmented 3D Flow Reconstruction and Computational Fluid Dynamics Simulation, Dissertation, Imperial College London, 2019. Link

  6. Zhou, X. et al., _ Measurement Augmented 3D Lattice Boltzmann Flow Simulation for Convergence Acceleration and Uncertainty Suppression_, Submitted to Computers & Fluids.

  7. Ataei, M. et al., LBfoam: An open-source software package for the simulation of foaming using the Lattice Boltzmann Method, arXiv, 2020. Link

  8. Seil, P. and Pirker, S., LBDEMcoupling: Open-Source Power for Fluid-Particle Systems, Proceedings of the 7th International Conference on Discrete Element Methods (DEM) 2016, Springer Proceedings in Physics, Vol. 188, 2017. Link

  9. Bonaccorso, F. et al., LBsoft: a parallel open-source software for simulation of colloidal systems, arXiv, 2020. Link

  10. Schmieschek, S. et al., LB3D: A parallel implementation of the Lattice-Boltzmann method for simulation of interacting amphiphilic fluids, Computer Physics Communications, Vol. 217, pp. 149-161, 2017. Link

  11. Desplata, J.-C., Pagonabarraga, I. and Bladon, P., LUDWIG: A parallel Lattice-Boltzmann code for complex fluids, Computer Physics Communications, Vol. 134 (3), pp. 273-290, 2001. Link

  12. Gray, A. and Stratford, K., Ludwig: multiple GPUs for a complex fluid lattice Boltzmann application, Designing Scientific Applications on GPUs, Chapman and Hall/CRC, 2013.

  13. Harwood, A.R.G. et al., LUMA: A many-core, Fluid–Structure Interaction solver based on the Lattice-Boltzmann Method, SoftwareX, Vol. 7, pp. 88-94, 2018. Link

  14. Hennigh, O., Lat-Net: Compressing Lattice Boltzmann Flow Simulations using Deep Neural Networks, arXiv, 2017. Link

  15. Krämer, A., Wilde, D., Bedrunka, M., Lettuce: PyTorch-based Lattice Boltzmann Solver (Version 0.2.0), Zenodo, 2020. Link

  16. Chen, Y. et al., Inertial Effects During the Process of Supercritical CO2 Displacing Brine in a Sandstone: Lattice Boltzmann Simulations Based on the Continuum-Surface-Force and Geometrical Wetting Models, Water Resources Research, Vol. 55, pp. 11144-11165, 2019. Link

  17. Tomczak, T., Szafran, R., A new GPU implementation for lattice-Boltzmann simulations on sparse geometries, Computer Physics Communications, Vol. 235, pp. 258-278, 2019. Link

  18. Tomczak, T., Szafran, R., Sparse geometries handling in lattice Boltzmann method implementation for graphic processors, IEEE Transactions on Parallel and Distributed Systems, Vol. 29(8), pp. 1865 - 1878, 2018. Link

  19. Hasert, M. et al., Complex fluid simulations with the parallel tree-based Lattice Boltzmann solver Musubi, Journal of Computational Science, Vol. 5(5), pp. 784-794, 2014. Link

  20. Heuveline, V. and Latt, J., The OpenLB project: an open source and object oriented implementation of lattice boltzmann methods, International Journal of Modern Physics C, Vol. 18 (4), pp. 627-634,2007. Link

  21. Heuveline, V. and Krause, M.J., OpenLB: Towards an Efficient Parallel Open Source Library for Lattice Boltzmann Fluid Flow Simulations, PARA'08 Workshop on State-of-the-Art in Scientific and Parallel Computing, May 13-16, 2008. Link

  22. Latt, J. et al., Palabos: Parallel Lattice Boltzmann Solver, arXiv, 2019. Link

  23. Januszewski, M. and Kostur, M., Sailfish: A flexible multi-GPU implementation of the lattice Boltzmann method, Computer Physics Communications, Vol. 185 (9), pp. 2350-2368, 2014. Link

  24. Latt, J., Coreixas, C. and Beny, J., Cross-platform programming model for many-core lattice Boltzmann simulations, arXiv, 2020. Link

  25. Coon, E.T., Porter, M.L. and Kang, Q, Taxila LBM: a parallel, modular lattice Boltzmann framework for simulating pore-scale flow in porous media. Computational Geosciences, Vol. 18, pp. 17–27, 2014. Link

  26. Porter, M.L. et al., Multicomponent interparticle-potential lattice Boltzmann model for fluids with large viscosity ratios, Physical Review E, Vol. 86 (3), 036701, 2012. Link

  27. Bauer, M. et al., waLBerla: A block-structured high-performance framework for multiphysics simulations, To appear in Computers & Mathematics with Applications, 2020. Link

  28. Bülling, A., Modelling of electrokinetic flow using the lattice-Boltzmann method, Master thesis, Chalmers University of Science and Technology, 2012. Link

  29. Bray, A. et al., gLBM: A GPU enabled Lattice Boltzmann Method Library, Journal of Open Source Software, Vol. 7 (70), 2555, 2022. Link

  30. Mohamad, A. A., Lattice Boltzmann Method: Fundamentals and Engineering Applications with Computer Codes, Springer International Publishing, ISBN 978-0-85729-455-5, 2019. Link

  31. Krüger, T. et al., The Lattice Boltzmann Method: Principles and Practice, Springer International Publishing, ISBN 978-3-319-44647-9, 2017. Link


Credits

Thanks to the following people for their suggestions:

  1. Sebastian Geller - VirtualFluids

  2. Andinet Enquobahrie - gLBM

Open Source Agenda is not affiliated with "List Lattice Boltzmann Codes" Project. README Source: sthavishtha/list-lattice-Boltzmann-codes