The macro–micro-coupling tool (MaMiCo) was developed to ease the development of and modularize molecular-continuum simulations, retaining sequential and parallel performance. We demonstrate the functionality and performance of MaMiCo by coupling the spatially adaptive Lattice Boltzmann framework waLBerla with four molecular dynamics (MD) codes: the light-weight Lennard-Jones-based implementation SimpleMD, the node-level optimized software ls1 mardyn, and the community codes ESPResSo and LAMMPS. We detail interface implementations to connect each solver with MaMiCo. The coupling for each waLBerla-MD setup is validated in three-dimensional channel flow simulations which are solved by means of a state-based coupling method. We provide sequential and strong scaling measurements for the four molecular-continuum simulations. The overhead of MaMiCo is found to come at 10%–20% of the total (MD) runtime. The measurements further show that scalability of the hybrid simulations is reached on up to 500 Intel SandyBridge, and more than 1000 AMD Bulldozer compute cores.#R##N#Program summary#R##N#Program title: MaMiCo#R##N##R##N#Catalogue identifier: AEYW_v1_0#R##N##R##N#Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEYW_v1_0.html#R##N##R##N#Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland#R##N##R##N#Licensing provisions: BSD License#R##N##R##N#No. of lines in distributed program, including test data, etc.: 67905#R##N##R##N#No. of bytes in distributed program, including test data, etc.: 1757334#R##N##R##N#Distribution format: tar.gz#R##N##R##N#Programming language: C, C++II.#R##N##R##N#Computer: Standard PCs, compute clusters.#R##N##R##N#Operating system: Unix/Linux.#R##N##R##N#RAM: Test cases consume ca. 30–50 MB#R##N##R##N#Classification: 7.7.#R##N##R##N#External routines: Scons (http:www.scons.org), ESPResSo, LAMMPS, ls1 mardyn, waLBerla#R##N##R##N#Nature of problem: Coupled molecular-continuum simulation for multi-resolution fluid dynamics: parts of the domain are resolved by molecular dynamics whereas large parts are covered by a CFD solver, e.g. a lattice Boltzmann automaton#R##N##R##N#Solution method: We couple existing MD and CFD solvers via MaMiCo (macro–micro coupling tool). Data exchange and coupling algorithmics are abstracted and incorporated in MaMiCo. Once an algorithm is set up in MaMiCo, it can be used and extended, even if other solvers are used (as soon as the respective interfaces are implemented).#R##N##R##N#Restrictions: Currently, only single-centered Lennard-Jones systems are supported.#R##N##R##N#Running time: Runtime depends on the underlying coupled problem and may range from minutes to days. The provided test cases for all different solver couplings (incl. one complete coupling cycle of avg. domain size) take ca. 10 h on a regular Desktop.
['Philipp Neumann', 'Hanno Flohr', 'Rahul Arora', 'Piet Jarmatz', 'Nikola Tchipev', 'Hans-Joachim Bungartz']
MaMiCo: Software design for parallel molecular-continuum flow simulations ☆