Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 4 Next »

Overview

The OpenLB project provides a C++ package for the implementation of lattice Boltzmann methods that is general enough to address a vast range of transport problems, e.g. in computational fluid dynamics. The source code is publicly available and constructed in a well readable, modular way. This enables for a fast implementation of both academic and advanced engineering applications. It is also easily extensible to include new physical models.

Building and Running OpenLB

Download v1.7 from https://zenodo.org/records/10684609/files/olb-1.7r0.tgz.

Untar olb-1.7r0.tgz
cd olb-1.7r0
Edit config.mk

Sample build script:

#!/bin/bash
module load intel/2023.2
module load compiler mkl

MPI=impi-2021.10.0
MPI=hpcx-2.18
module load hpcx/2.18
if [[ "$MPI" =~ ^impi ]]; then
        export MPICC=mpiicc
        export MPICXX=mpiicpc
elif [[ "$MPI" =~ ^hpcx ]]; then
        export OMPI_MPICC=icc
        export OMPI_MPICXX=icpc
        export MPICC=mpicc
        export MPICXX=mpicxx
fi
make clean
make

Sample output:

[prepareGeometry] Prepare Geometry ...
[SuperGeometry3D] cleaned 0 inner boundary voxel(s)
[SuperGeometryStatistics3D] updated
[SuperGeometry3D] the model is correct!
[CuboidGeometry3D] ---Cuboid Stucture Statistics---
[CuboidGeometry3D]  Number of Cuboids:  224
[CuboidGeometry3D]  Delta  (min):               1
[CuboidGeometry3D]         (max):               1
[CuboidGeometry3D]  Ratio  (min):               0.756757
[CuboidGeometry3D]         (max):               1.21429
[CuboidGeometry3D]  Nodes  (min):               33264
[CuboidGeometry3D]         (max):               38148
[CuboidGeometry3D]  Weight (min):               33264
[CuboidGeometry3D]         (max):               38148
[CuboidGeometry3D] --------------------------------
[SuperGeometryStatistics3D] materialNumber=1; count=3960000; minPhysR=(0,1,0); maxPhysR=(199,99,199)
[SuperGeometryStatistics3D] materialNumber=2; count=3960000; minPhysR=(0,100,0); maxPhysR=(199,198,199)
[SuperGeometryStatistics3D] materialNumber=3; count=40000; minPhysR=(0,0,0); maxPhysR=(199,0,199)
[SuperGeometryStatistics3D] materialNumber=4; count=40000; minPhysR=(0,199,0); maxPhysR=(199,199,199)
[SuperGeometryStatistics3D] countTotal[1e6]=8
[prepareGeometry] Prepare Geometry ... OK
[prepareLattice] Prepare Lattice ...
[prepareLattice] Prepare Lattice ... OK
[main] starting simulation...
...
[getResults] averageRhoFluidOne=0.514114; averageRhoFluidTwo=0.526934
[Timer] step=29900; percent=99.6667; passedTime=1304.68; remTime=4.3635; MLUPs=189.349
[getResults] averageRhoFluidOne=0.514115; averageRhoFluidTwo=0.526935
[Timer]
[Timer] ----------------Summary:Timer----------------
[Timer] measured time (rt) : 1308.883s
[Timer] measured time (cpu): 1285.488s
[Timer] average MLUPs :       182.751
[Timer] average MLUPps:       0.816
[Timer] ---------------------------------------------

Task and Submissions

  1. Download the input .

    • Uncompress the file to OpenLB root directory.

    • cd rayleighTaylor3d

    • make

  2. Run the application

    • mpirun -np <NPROC> <MPIFLAGS> rayleighTaylor3d

  3. Submit the stdout, config.mk, and Makefile.

  • No labels