Navigation and service


A multicomponent Lattice Boltzmann solver for flow simulations

Scientific area

Computational Fluid Dynamics, mass transport.

Short description

Musubi is a Lattice Boltzmann solver for flows and liquid solutions. It can especially be used to simulate liquid mixtures by solving the Maxwell-Stefan and Navier-Stokes equations efficiently on highly distributed architectures such as the IBM BlueGene/Q or the Cray XC40. Features of the solver include local mesh refinement, Non-Newtonian models and higher order boundary conditions. It comes along with a parallel mesh generation tool, which enables the generation of large and complex domains, suitable for large-scale simulations.

Musubi is written in modern Fortran and deploys Lua as a configuration frontend. This enables a flexible workflow and seamless integration into batched processing. Additionally, a Fortran pre-processor is used to implement macros and conditional compilation enabling machine adaptations for example by switching the memory access patterns at compile time.

Musubi has been successfully applied in a number of complex simulations like the multicomponent flow in an electrodialysis stack, clinical settings like blood flow in intracranial aneurysms or sound generation in the flow through a porous medium.

Example results from MusubiThis image shows the flow in a channel between two membranes, as commonly found in the electrodialysis processes. The membranes are kept apart by a complex structure, indicated by grey solids. Streamlines indicate the bulk flow through this channel and the concentration of one species in the simulation is indicated by the colored volume rendering. This is one of the salt ions that is transported by convection, diffusion and electrical forces.


  • 458,752 cores (917,504 parallel threads) on BlueGene/Q (JUQUEEN)
  • 65,536 cores on IBM System X iDataPlex (SuperMUC)
  • 49,152 cores on Cray XC40 (Hornet)

Programming language and model

  • Fortran 2003
  • MPI, OpenMP

Tested on platforms

  • BlueGene/Q and /P
  • x86

Application developers and contact

Prof. Dr.-Ing Sabine Roller
Simulation Techniques and Scientific Computing
Hölderlinstr. 3
57076 Siegen

(Text and images provided by the developers)