Data mapping in preCICE: article published

Dear preCICE community,

We are happy to share the final publication of our research article titled “Efficient Partition-of-Unity Radial-Basis-Function Interpolation for Coupled Problems” in the SIAM Journal on Scientific Computing.

This article deals specifically with the partition-of-unity RBF (PU-RBF) data mapping implemented in preCICE. We investigate not only numerical aspects and efficiency considerations of the algorithm, but also focus on user-visible aspects, highlighting the impact of individual configuration options. You will also find a comprehensive comparison of the PU-RBF method with previous data mapping methods. As an example, we show here Fig. 16 of the article: a comparison of all projection-based data mapping methods in preCICE compared to the PU-RBF:

The left plot shows the computational accuracy in terms of the relative error and the right plot shows the computational efficiency of the method during initialization (solid lines) and for each coupling iteration (dashed lines). Both results are plotted over the fill distance (mesh width) of a unit cube, i.e., meshes are more refined towards the right side of the axis. All mappings were computed in parallel, on 48 CPU ranks.

PU-RBF exhibits a considerable accuracy gain compared to any other shown method. In terms of computational efficiency, the two PU-RBF variants exhibit a comparable performance during the initialization phase, while the “per-coupling-iteration” cost is not as efficient as for projection-based mappings, where it is merely a memory lookup. However, the overall timescale of depicted runtimes is quite small, considering that the most refined case has around 740k vertices.

Compared to other RBF mapping variants implemented in preCICE, the PU-RBF method is several orders of magnitude more efficient (cf. Fig. 15 of the article), while preserving its accuracy.

We consider the PU-RBF implementation a milestone for data mapping in preCICE, as it significantly extends preCICE’s applicability: the method can effectively cope with large-scale scenarios (in terms of vertices per rank), as typically encountered in volumetric couplings, and a suitable parallelization concept for large-scale computations (in terms of the number of ranks) is built-in. Specifically large-scale scenarios were problematic for previous data mapping methods in preCICE, as users typically would have to select between numerical accuracy and computational efficiency, but both were not available in one method. As an example: When replacing the previous global RBF method by a PU-RBF for a 3D surface-coupled problem, we were able to measure a speed-up of 25% of the global simulation time, including solver runtimes.

Although the article refers specifically to preCICE version v3.1.1, the method is available since preCICE version v3.0.0. Many users might use the method already now, as it is hidden behind the RBF alias configuration in the precice-config file via <mapping:rbf ... />. However, the preCICE configuration file gives more control over the algorithm, if necessary:

<mapping:rbf-pum-direct from=... polynomial="{string:'off' or 'separate'}(default:'separate')" vertices-per-cluster="{integer}(default:'50')" relative-overlap="{float}(default:'0.15')"  project-to-input="{boolean}(default:'1')" />

If any of these parameters are unclear, you can find more details in the article.
The full article, including the preCICE source code and experimental setups, is available as open access: https://doi.org/10.1137/24M1663843

We are happy about any feedback from the community!

6 Likes