The literature one can read to understand different aspects of preCICE may feel a bit overwhelming. This page aims to give some starting points and citation guidelines.
Apart from these resources, you may also wonder what else the preCICE team and community have published. In that case, please refer to the citations on Google Scholar (this is for the v1 paper, the v2 paper will be listed soon).
When to cite what
preCICE is made by academics: please cite us! 🤗
Even further, please cite all components you are using, next to the latest reference paper. Here are some guidelines:
preCICE in general
Talking about preCICE, at any level? Then, read and cite the latest preCICE reference paper:
Talking specifically about preCICE v1? Then keep citing the preCICE v1 reference paper.
Are you using any of the adapters? Then, please also read and cite the respective references. The following adapters currently have reference papers:
For the OpenFOAM adapter, a reference paper is under review.
For the OpenFOAM, CalculiX, SU2, and code_aster adapters, as well as for the concept of an adapter, please read and cite this overview paper:
To ensure reproducibility of your results, you can use and cite the preCICE distribution. This frequently updated snapshot of the preCICE ecosystem includes versions of components that work together, while acknowledging everyone that has contributed to the respective version of any component.
The latest reference article for preCICE is preCICE v2: A sustainable and user-friendly coupling library. This gives a wide overview over the complete preCICE ecosystem and is a great place to start reading about the modern preCICE (most probably even for the versions after v2).
The original reference article for preCICE is preCICE - A Fully Parallel Library for Multi-Physics Surface Coupling. This may not be the best introduction for new users because of its condensed form.
A very good first reading is the dissertations of the core preCICE developers:
Bernhard Gatzhammer introduced preCICE in his dissertation Efficient and Flexible Partitioned Simulation of Fluid-Structure Interactions (2014). Chapters 1-4 give a detailed introduction of most of the preCICE features and are still valid to a large extend. Start here for an explanation of the different coupling schemes, of the different communication methods, or of the data mapping techniques. Note that the “geometry interface” and “server mode” features have been removed.
Benjamin Uekermann introduced inter- and intra-solver parallelization in his dissertation Partitioned Fluid-Structure Interaction on Massively Parallel Systems (2016). Chapter 2 gives a compact introduction to preCICE. Furthermore, read here especially for the parallel coupling schemes, which allow a simultaneous execution of multiple solvers (Chapter 3) and the realization of all main features on distributed data (Chapter 4).
The list of completed dissertations also includes:
Klaudius Scheufele: Coupling schemes and inexact Newton for multi-physics and coupled optimization problems. (2018)
Florian Lindner: Data Transfer in Partitioned Multi-Physics Simulations: Interpolation & Communication (2019)
and the story continues by the current team.
Coupling schemes For an introduction to explicit and implicit coupling, as well as the various acceleration / post-processing techniques, have a look at the dissertations of Bernhard Gatzhammer (Sections 2.3 and 4.1) and Benjamin Uekermann (Chapter 3). An easy first read on quasi-Newton acceleration is A Comparison of Various Quasi-Newton Schemes for Partitioned Fluid-Structure Interaction. Detailed information on the improved IQN-IMVJ acceleration is given in Robust Multisecant Quasi-Newton Variants for Parallel Fluid-Structure Simulations – and Other Multiphysics Applications.
Data mapping For an introduction to the various techniques, have a look at the dissertations of Bernhard Gatzhammer (Sections 2.4 and 4.2) and Benjamin Uekermann (Section 4.3). For a more condensed overview of RBF mapping, see Radial Basis Function Interpolation for Black-Box Multi-Physics Simulations. For details regarding gradient-based data mapping schemes, see Second-order projection-based mapping methods for coupled multi-physics simulations. For a performance comparison between the different mapping methods, see the preCICE v2 reference paper. For details regarding volume-coupling with cell-interpolation, see Robust and Efficient Barycentric Cell-Interpolation for Volumetric Coupling with preCICE.
Communication For an introduction to the various techniques, have a look at the dissertation of Bernhard Gatzhammer (Section 4.3). Have a look also at the master’s thesis of Alexander Shukaev: “A Fully Parallel Process-to-Process Intercommunication Technique for preCICE”.
Time interpolation This feature is currently under active development. Have a look at the publications, talks, and posters of Benjamin Rodenberg.
Parallel and high-performance computing
- The initial effort for parallelization of preCICE is documented in Partitioned Fluid-Structure-Acoustics Interaction on Distributed Data: Coupling via preCICE (2016).
- Further steps to speed up initialization are documented in ExaFSA: Parallel Fluid-Structure-Acoustic Simulation (2020).
- The parallelization of communication initialization is published in Efficient and Scalable Initialization of Partitioned Coupled Simulations with preCICE (2021).
- More details can be found in Benjamin’s thesis (2016), Florian’s thesis (2019), and Klaudius’ thesis (2019).
The documentation pages of each adapter include guides to further literature. Apart from those resources, the proceedings paper “Official preCICE Adapters for Standard Open-Source Solvers” includes a first overview and describes the concept of an adapter, while the preCICE v2 reference paper gives a more updated and detailed overview of the preCICE ecosystem.