Table of Contents
Fetching ...

A waveform iteration implementation for black-box multi-rate higher-order coupling

Benjamin Rodenberg, Benjamin Uekermann

TL;DR

The paper tackles efficient coupling of PDE-based multiphysics simulations when components operate on different time scales. It integrates waveform iteration as a black-box, high-order multi-rate coupling into the preCICE library, enabling arbitrary interpolants within time windows and fixed-point acceleration. The authors detail the data layout, user interface changes, and data flow necessary to support adaptive stepping and non-matching meshes, and demonstrate substantial error reductions and potential for fewer synchronization points. This approach broadens preCICE's applicability to complex multiphysics problems, offering greater flexibility and accuracy for practitioners.

Abstract

Many multiphysics simulations involve processes evolving on disparate time scales, posing a challenge for efficient coupling. A naive approach that synchronizes all processes using the smallest time scale wastes computational resources on slower processes and typically achieves only linear convergence in time. Waveform iteration is a promising numerical technique that enables higher-order, multi-rate coupling while treating coupled components as black boxes. However, applying this approach to PDE-based coupled simulations is nontrivial. In this paper, we integrate waveform iteration into the black-box coupling library preCICE with minimal modifications to its API. We detail how this extension interacts with key preCICE features, including data mapping for non-matching meshes, quasi-Newton acceleration for strongly coupled problems, and parallel peer-to-peer communication. We then showcase that waveform iteration significantly reduces numerical errors -- often by orders of magnitude. This advancement greatly enhances preCICE, benefiting its extensive user community.

A waveform iteration implementation for black-box multi-rate higher-order coupling

TL;DR

The paper tackles efficient coupling of PDE-based multiphysics simulations when components operate on different time scales. It integrates waveform iteration as a black-box, high-order multi-rate coupling into the preCICE library, enabling arbitrary interpolants within time windows and fixed-point acceleration. The authors detail the data layout, user interface changes, and data flow necessary to support adaptive stepping and non-matching meshes, and demonstrate substantial error reductions and potential for fewer synchronization points. This approach broadens preCICE's applicability to complex multiphysics problems, offering greater flexibility and accuracy for practitioners.

Abstract

Many multiphysics simulations involve processes evolving on disparate time scales, posing a challenge for efficient coupling. A naive approach that synchronizes all processes using the smallest time scale wastes computational resources on slower processes and typically achieves only linear convergence in time. Waveform iteration is a promising numerical technique that enables higher-order, multi-rate coupling while treating coupled components as black boxes. However, applying this approach to PDE-based coupled simulations is nontrivial. In this paper, we integrate waveform iteration into the black-box coupling library preCICE with minimal modifications to its API. We detail how this extension interacts with key preCICE features, including data mapping for non-matching meshes, quasi-Newton acceleration for strongly coupled problems, and parallel peer-to-peer communication. We then showcase that waveform iteration significantly reduces numerical errors -- often by orders of magnitude. This advancement greatly enhances preCICE, benefiting its extensive user community.

Paper Structure

This paper contains 11 sections, 14 equations, 16 figures, 1 table.

Figures (16)

  • Figure 1: Comparison of different multi-rate coupling strategies. Two participants $A$ and $B$ use three and five time steps in the time window $[t_{\text{ini}}, t_{\text{ini}} + \Delta t]$, respectively. $A$ uses constant time steps and the forth-order Runge-Kutta RK4 method. $B$ use adaptive time steps and the generalized-$\alpha$ method. Interpolants are computed from data values at different points in time and sampled at example locations to retrieve data values for the coupling partner. Notation is formally introduced in \ref{['sec:wi']}.
  • Figure 2: Time stepping within a time window $[t_{\text{ini}}, t_{\text{ini}} + \Delta t]$. [style=sas]pythondt = min(solver_dt, precice_dt) reaches the next time step or the end of the time window.
  • Figure 3: Visualization of preCICE configuration example of \ref{['code:config']} using the preCICE CLI
  • Figure 4: Core data structures in preCICE and their relationships. The symbols for [style=sas]C++Storage, [style=sas]C++Stample, and [style=sas]C++Sample are used throughout the paper.
  • Figure 5: Methods to add and retrieve data from the [style=sas]C++Storage class
  • ...and 11 more figures