Log in Register

Login to your account

Username *
Password *
Remember Me

Create an account

Fields marked with an asterisk (*) are required.
Name *
Username *
Password *
Verify password *
Email *
Verify email *
Captcha *

Advanced LBM Open Source Codes/Libraries

 palabos logo
The Palabos library is a framework for general-purpose computational fluid dynamics (CFD), with a kernel based on the lattice Boltzmann (LB) method. The library’s native programmer interface in written in C++. It has practically no external dependencies (only Posix and MPI) and is therefore extremely easy to deploy on various platforms, including parallel systems like the BlueGene. Additional programmer interfaces are available for the Python and Java programming languages, which make it easier to rapidly prototype and develop CFD applications. There exists currently no graphical user interface.
 OpenLB
OpenLB is a library for lattice Boltzmann simulations. The code is in C++ and can be used to simulate physical phenomena, with emphasis on fluids. The kernel is based on a variety of lattice Boltzmann models (BGK Regularized model, MRT, Entropic Lattice Boltzmann, BGK with an adjustable speed of sound, BGK, and MRT with Smagorinsky model, the Porous media model). The source code is modular and can easily be extended by application programmers.
sailfish logo
Sailfish is a general purpose fluid dynamics solver optimized for modern multi-core processors, especially Graphics Processing Units (GPUs). The solver is based on the Lattice Boltzmann Method, which is conceptually quite simple to understand and which scales very well with increasing computational resources. The Sailfish project is also an experiment in scientific computing and software engineering. Unlike the majority of CFD packages, which are written in compiled languages such as C++ or Fortran, Sailfish is implemented in Python and CUDA C/OpenCL. We have found this combination to be a very powerful one, making it possible to significantly shorten development time without sacrificing any computational performance.
ASL logo
Advanced Simulation Library (ASL) is a free and open-source multiphysics simulation software package. Its computational engine is based, among others, on the Lattice Boltzmann Methods and is written in OpenCL which enables extraordinarily efficient deployment on a variety of massively parallel architectures, ranging from inexpensive FPGAs, DSPs, and GPUs up to heterogeneous clusters and supercomputers. The engine is hidden entirely behind C++ classes, so that no OpenCL knowledge is required from application programmers.
taxila lbm b
Taxila LBM is a parallel implementation of the Lattice Boltzmann Method for simulation of flow in porous and geometrically complex media. Taxila is modular, "object-oriented" written in Fortran-90 code.
apes 150
Musubi is a Lattice Boltzmann solver based on Octree meshes. The solver is massively scalable. In addition to incompressible flows, you will find many multiphysics extensions as multicomponent flows. It is a part of the APES suite that includes an automatic mesh generator, several solvers, and post-processing tools. All of them use the common element topology layer of the TreElM library to allow a consistent, parallel treatment at each step of the parallel tool-chain.

 

Open Source CAD/Geometry Building Software

Free cad logo
FreeCAD is a parametric 3D modeler. Parametric modeling allows you to easily modify your design by going back into your model history and changing its parameters. FreeCAD is open-source (LGPL license) and completely modular, allowing for very advanced extension and customization.
BRL CAD logo b
BRL-CAD is a powerful cross-platform Open Source combinatorial Constructive Solid Geometry (CSG) solid modeling system that includes interactive 3D solid geometry editing, high-performance ray-tracing support for rendering and geometric analysis, network-distributed framebuffer support, image, and signal-processing tools, path-tracing and photon mapping support for realistic image synthesis, a system performance analysis benchmark suite, an embedded scripting interface, and libraries for robust high-performance geometric representation and analysis.
salome logo
SALOME is open-source software that provides a generic platform for Pre- and Post-Processing for numerical simulation. It is based on an open and flexible architecture made of reusable components. SALOME is a cross-platform solution. It is distributed as open-source software under the terms of the GNU LGPL license.
scad logo  OpenSCAD is software for creating solid 3D CAD models. It is free software and available for Linux/UNIX, Windows, and Mac OS X. Unlike most free software for creating 3D models (such as Blender) it does not focus on the artistic aspects of 3D modeling but instead on the CAD aspects. Thus it might be the application you are looking for when you are planning to create 3D models of machine parts but pretty sure is not what you are looking for when you are more interested in creating computer-animated movies.
OpenSCAD overview

 

Open Source Cartesian Grid Generators

OpenFoam Logo
SnappyHexMesh is supplied with OpenFOAM. The snappyHexMesh utility generates 3-dimensional meshes containing hexahedra (hex) and split-hexahedra (split-hex) automatically from triangulated surface geometries in Stereolithography (STL) format. The mesh approximately conforms to the surface by iteratively refining a starting mesh and morphing the resulting split-hex mesh to the surface. An optional phase will shrink back the resulting mesh and insert cell layers. The specification of mesh refinement level is very flexible and the surface handling is robust with a pre-specified final mesh quality. It runs in parallel with a load balancing step every iteration.

 

Open Source Post-Processing Tools

ParaViewLogo
ParaView is an open-source, multi-platform data analysis and visualization application. ParaView users can quickly build visualizations to analyze their data using qualitative and quantitative techniques. The data exploration can be done interactively in 3D or programmatically using ParaView’s batch processing capabilities. ParaView was developed to analyze extremely large datasets using distributed memory computing resources. It can be run on supercomputers to analyze datasets of petascale as well as on laptops for smaller data. ParaView is an application framework as well as a turn-key application.
mayavi logo
Mayavi2 provides a general-purpose visualization engine based on pipeline architecture similar to that used in VTK. Mayavi2 also provides an Envisage plug-in for 2D/3D scientific data visualization. Mayavi2 uses the Enthought Tool Suite (ETS) in the form of Traits, TVTK, and Envisage.

 

LBM Workshop Internet Resources

workshop 2 b
The purpose of the LBM workshop is to give newcomers to the lattice Boltzmann method a comprehensive overview of the method. The emphasis is on helping researchers make simulations that “just work”.