CudneLB is a MPI+CUDA or MPI+CPU high-performance CFD simulation code, based on Lattice Boltzmann Method.
It provides a clear interface for calculation of complex physics, and the implementation of new models.
Just clone the repo (or download the zip file):
git clone https://github.com/CFD-GO/TCLB.git
cd TCLB
If you want a more recent (but less stable) version, you could try the development branch:
git clone -b develop https://github.com/CFD-GO/TCLB.git
cd TCLB
You'll need:
- R
- packages for R: optparse, numbers, rtemplate, gvector, polyAlgebra
- nVidia CUDA (if you want to use GPU)
- python, numpy (if you want to use the integrated python interpreter)
- python, sympy and R package: rPython (if you want to develop a model using python instead of R)
- MPI (e.g. OpenMPI)
You can install many of these with the tools/install.sh script (note it requires sudo):
sudo tools/install.sh cuda 6.5-14 # only if your GPU supports cuda
sudo tools/install.sh r
sudo tools/install.sh openmpi
tools/install.sh rdep
sudo tools/install.sh python-dev
tools/install.sh rpython
sudo tools/install.sh module # only on CentOS
The install.sh
script is designed to work on Ubuntu (e.g. on the Travis-CI VMs).
The install.sh
script should work on CentOS.
You can install the sudo
parts by yourself, and use script to install R packages: rdep and rpython.
This should work:
module load mpi/openmpi-x86_64 # only on CentOS
make configure
./configure --enable-double --enable-graphics --with-cuda-arch=sm_20
# only CPU ./configure --enable-double --disable-cuda
make d2q9
This should also work:
CLB/d2q9/main example/flow/2d/karman.xml
The documentation (including tutorials) is published at docs.tclb.io. You can contribute at CFD-GO/TCLB_docs.
For the develop
version, most recent documentation can be found at
develop.docs.tclb.io.
Author: Łukasz Łaniewski-Wołłk
Co-authors:
Contributors:
Developed at: C-CFD Group at Warsaw University of Technology from 2012
This software is distributed under the GPL v3 License.
If you need this software under a different license, please contact the main author.
Contact: llaniewski(monkey)meil.pw.edu.pl