Multi-physics simulations using a hierarchical interchangeable software interface
Abstract
We introduce a general-purpose framework for interconnecting scientific simulation programs using a homogeneous, unified interface. Our framework is intrinsically parallel, and conveniently separates all component numerical modules in memory. This strict separation allows automatic unit conversion, distributed execution of modules on different cores within a cluster or grid, and orderly recovery from errors. The framework can be efficiently implemented and incurs an acceptable overhead. In practice, we measure the time spent in the framework to be less than 1% of the wall-clock time. Due to the unified structure of the interface, incorporating multiple modules addressing the same physics in different ways is relatively straightforward. Different modules may be advanced serially or in parallel. Despite initial concerns, we have encountered relatively few problems with this strict separation between modules, and the results of our simulations are consistent with earlier results using more traditional monolithic approaches. This framework provides a platform to combine existing simulation codes or develop new physical solver codes within a rich "ecosystem" of interchangeable modules.
Cite
@article{arxiv.1204.5522,
title = {Multi-physics simulations using a hierarchical interchangeable software interface},
author = {Simon Portegies Zwart and Steve McMillan and Arjen van Elteren and Inti Pelupessy and Nathan de Vries},
journal= {arXiv preprint arXiv:1204.5522},
year = {2015}
}
Comments
36 pages, 12 figures and source code (accepted for publication in Computer Physics Communications)