arXiv reader

Parallel-in-time high-order multiderivative IMEX solvers

Jochen Schütz, David C. Seal and Jonas Zeifang

arXiv
2101.07846v1 · PDF · 19 January 2021
Categories
math.NA, cs.NA
Licence
CC BY 4.0 The site shows the text.

Abstract

In this work, we present a novel class of parallelizable high-order time integration schemes for the approximate solution of additive ODEs. The methods achieve high order through a combination of a suitable quadrature formula involving multiple derivatives of the ODE’s right-hand side and a predictor-corrector ansatz. The latter approach is designed in such a way that parallelism in time is made possible. We present thorough analysis as well as numerical results that showcase scaling opportunities of methods from this class of solvers.

Items 29

Assumption

Assumption 1

1Y26

All occuring functions \Phi, \Phi_{\text{I}}, \Phi_{\text{E}} and their temporal derivatives \overset{\boldsymbol .}{\Phi},\overset{\boldsymbol .}{\Phi}_{\text{I}}, \overset{\boldsymbol .}{\Phi}_{\text{E}} are assumed to be smooth and Lipschitz continuous.

Definition

Definition 1

0J6Z

Let w^n denote an approximate solution to w at point t^n, and let w^{n,l}, 1 \leq l \leq s denote the stage values to be computed. A two-derivative Runge-Kutta method is any method that can be cast as

\begin{aligned} w^{n,l} := w^n + \Delta t \sum_{j=1}^s B_{lj}^{(1)} \Phi(w^{n,j}) + \Delta t^2 \sum_{j=1}^s B_{lj}^{(2)} \overset{\boldsymbol .}{\Phi}(w^{n,j}), \qquad 1 \leq l \leq s, \end{aligned}

and update given by

w^{n+1} = w^n + \Delta t \sum_{j=1}^s b_j^{(1)} \Phi(w^{n,j}) + \Delta t^2 \sum_{j=1}^s b^{(2)}_j \overset{\boldsymbol .}{\Phi}(w^{n,j}),

where the B^{(1)}, B^{(2)}, b^{(1)}, and b^{(2)} are the Butcher tableaux that define the scheme. We say the method is globally stiffly accurate if b^{(1)}_j = B^{(1)}_{sj} and b^{(2)}_j = B^{(2)}_{sj}, i.e., the last stage defines the update:

\begin{aligned} w^{n+1} := w^{n,s}. \end{aligned}
Uses Assumption 1 · Used by Example 1
Example

Example 1 (Two-derivative Hermite-Birkhoff collocation methods)

N6U9

In this work, we use the following two-derivative Runge-Kutta methods:

    40 A fourth-order method (q=4) with two stages (s=2, one being fully explicit), which exactly corresponds to the method used in [SealSchuetz19]:

    \begin{aligned} c = \begin{pmatrix}0 \\ 1\end{pmatrix}, \quad B^{(1)} = \begin{pmatrix} 0 & 0 \\[0.5em] \frac 1 2& \frac 1 2 \end{pmatrix}, \quad B^{(2)} = \begin{pmatrix} 0 & 0 \\[0.5em] \frac 1 {12} & \frac{-1}{12} \end{pmatrix}. \end{aligned}

    40 A sixth-order method (q=6) with three stages (s=3, one being fully explicit), as also used in [SSJ2017]:

    \begin{aligned} c = \begin{pmatrix}0\\ \frac 1 2\\ 1\end{pmatrix}, \quad B^{(1)} = \begin{pmatrix} 0 & 0 & 0 \\[0.5em] \frac{101}{480} & \frac{8}{30} & \frac{55}{2400} \\[0.5em] \frac{7}{30} & \frac{16}{30} & \frac{7}{30} \\ \end{pmatrix}, \quad B^{(2)} = \begin{pmatrix} 0 & 0 & 0 \\[0.5em] \frac{65}{4800} & -\frac{25}{600} & -\frac{25}{8000} \\[0.5em] \frac{5} {300} & 0 & -\frac{5}{300} \end{pmatrix}. \end{aligned}

    40 An eigth-order method (q=8) with four stages (s=4, one being fully explicit):

    \begin{aligned} c = \begin{pmatrix}0\\[0.5em] \frac 1 3\\[0.5em] \frac 2 3\\[0.5em] 1\end{pmatrix}, \quad B^{(1)} &= \begin{pmatrix} 0 & 0 & 0 & 0\\[0.5em] \frac{6893}{54432}& \frac{313}{2016}& \frac{89}{2016}& \frac{397}{54432} \\[0.5em] \frac{223}{1701}& \frac{20}{63}& \frac{13}{63}& \frac{20}{1701} \\[0.5em] \frac{31}{224}& \frac{81}{224}& \frac{81}{224}& \frac{31}{224} \end{pmatrix}, \\ B^{(2)} &= \begin{pmatrix} 0 & 0 & 0 & 0 \\[0.5em] \frac{1283}{272160}& -\frac{851}{30240}& -\frac{269}{30240}& -\frac{163}{272160} \\[0.5em] \frac{43}{8505}& -\frac{16}{945}& -\frac{19}{945}& -\frac{8}{8505} \\[0.5em] \frac{19}{3360}& -\frac{9}{1120}& \frac{9}{1120}& -\frac{19}{3360} \end{pmatrix}. \end{aligned}
Lemma

Lemma 1

TDNA

For each Hermite-Birkhoff Runge-Kutta method, there holds,

\begin{aligned} \int_{t^n}^{t^{n+1}} \Phi(w(t)) \mathrm{d}t = \mathcal I_l\left(\Phi(w(t^n + c_1 \Delta t)), \ldots, \Phi(w(t^n + c_s \Delta t))\right) + \mathcal{O}(\Delta t^{q+1}). \end{aligned}
Proof

Proof

27FQ

This is due to the construction: The Hermite-Birkhoff polynomial is of order 2s-1=q-1, which gives an integral approximation of order q+1. (Note that the length of the integration area is \Delta t.)

\sqcap\sqcup 501em\sqcap\sqcup =0pt=0

Algorithm

Algorithm 1 (\method{q,\km})

GVE0

To advance the solution to Eq. (?) from time level t^{n} to time level t^{n+1}, fill the values w^{n,[0],{l}} using a second-order IMEX-Taylor method:

    40 Predict. Solve the following expression for w^{n,[0],{l}} and 1 \leq l \leq s:

    \begin{aligned} \begin{split} w^{n,[0],{l}} := {\color{VioletRed}w^{n-1,[0],{s}}} & + c_l\Delta t \left(\Phi_{\text{I}}^{n,[0],{l}} + {\color{VioletRed}\Phi_{\text{E}}^{n-1,[0],{s}}}\right) \\ & + \frac{(c_l\Delta t)^2}{2} \left({\color{VioletRed}\overset{\boldsymbol .}{\Phi}_{\text{E}}^{n-1,[0],{s}}} - \overset{\boldsymbol .}{\Phi}_{\text{I}}^{n,[0],{l}}\right). \end{split} \end{aligned}

    Subsequently:

    40 Correct. Solve the following for w^{n,[k+1],{l}}, for each 2 \leq l \leq s and each 0 \leq k < k_{\max}:

    \begin{aligned} \begin{split} w^{n,[k+1],{1}} &:= {{\color{VioletRed}w^{n-1,[k+2],{s}}}}_{}, \\ w^{n,[k+1],{l}} &:= {\color{VioletRed}w^{n-1,[k+2],{s}}} \\ & + {\Delta t} \left( \Phi_{\text{I}}^{n,[k+1],{l}} - \Phi_{\text{I}}^{n,[k],{l}}\right) - \frac{\Delta t^2}{2} \left(\overset{\boldsymbol .}{\Phi}_{\text{I}}^{n,[k+1],{l}}- \overset{\boldsymbol .}{\Phi}_{\text{I}}^{n,[k],{l}}\right) \\ & + \mathcal I_l(\Phi^{n,[k],{0}}, \Phi^{n,[k],{1}}, \ldots, \Phi^{n,[k],{s}}). \end{split} \end{aligned}

    In order to close the recursion, if k = k_{\max} -1, then replace each of the k+2 with k_{\max}.

    40 Update. In order to preserve the first-same-as-last property, we put

    \begin{aligned} w^{n+1} := w^{n,[k_{\max}],{s}}. \end{aligned}

Finally, to seed initial conditions for this solver, we define

\begin{aligned} w^{-1,[k],{s}} := w_0, \qquad 0 \leq k \leq k_{\max}. \end{aligned}
Uses Assumption 1 · Used by Proof, Algorithm 2
Remark

Remark 1

LNYB

The difference between this algorithm and our previous one found in [SealSchuetz19] lies in the highlighted red terms:

\left\{{w^{n-1,[0],{s}}}, {\Phi_{\text{E}}^{n-1,[0],{s}}}, {\overset{\boldsymbol .}{\Phi}_{\text{E}}^{n-1,[0],{s}}}, {w^{n-1,[k+2],{s}}}\right\}.

In our original work each of these would have been evaluated at w^n. Here, we work with different iterate numbers. This potent modification makes it possible to parallelize the method in time without sacrificing the order of accuracy. The idea that will be layed out in this publication is very similar to – and in fact inspired by – the strategy proposed in [ChriOng11, ChriOng10].

Remark

Remark 2

PL2X

Please note that Alg. 1 is not a Runge-Kutta method.

Remark

Remark 3

7G3K

There is no implicitness in the Runge-Kutta quadrature \mathcal I_l. The only implicitness is in the difference of the \Phi_{\text{I}} and \overset{\boldsymbol .}{\Phi}_{\text{I}}. This term is used to introduce the necessary stability for stiff problems.

Lemma

Lemma 2

PVBA

The matrix A is power-bound by one, i.e., for each n \in \operatorname{\mathbb{N}}, there holds

\begin{aligned} \|A^n\| \leq 1. \end{aligned}
Proof

Proof

DXGV

Define the matrix \operatorname{\mathfrak{E}} \in \operatorname{\mathbb{R}}^{s\times s} that is zero except for the last column, which is filled with ones, i.e.,

\begin{aligned} \operatorname{\mathfrak{E}} = \left( \begin{matrix} 0 &0 & \cdots &0 & 1 \\ 0 &0 & \cdots &0 & 1 \\ \vdots & \vdots & & \vdots& \vdots \\ 0 & 0 & \cdots & 0 & 1 \end{matrix} \right). \end{aligned}

Then, A is given as the block matrix

\begin{aligned} A = \left( \begin{matrix} \operatorname{\mathfrak{E}} & 0 & 0 & 0 & \cdots & 0 & 0 \\ 0 & 0 & \operatorname{\mathfrak{E}} & 0 & \cdots & 0 & 0 \\ 0 & 0 & 0 & \operatorname{\mathfrak{E}} & \cdots & 0 & 0 \\ \vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 & 0 & 0 & \cdots & \operatorname{\mathfrak{E}} & 0 \\ 0 & 0 & 0 & 0 & \cdots & 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & \cdots & 0 & \operatorname{\mathfrak{E}} \end{matrix} \right). \end{aligned}

There holds \|Av\| \leq \|v\|, which can be seen due to the fact that for each 1 \leq i \leq s\cdot (k_{\max}+1), there is a 1 \leq j \leq s \cdot (k_{\max}+1) such that (Av)_i = v_j. This concludes the proof.

\sqcap\sqcup 501em\sqcap\sqcup =0pt=0

Corollary

Corollary 1

1SL1

There exists a constant C \in \operatorname{\mathbb{R}} such that for each j \in \operatorname{\mathbb{N}}^{\geq 0}, there holds

\begin{aligned} \|A^j B_E\| \leq C, \quad \|A^j B_I\| \leq C, \quad \|A^j \tilde B_E\| \leq C, \quad \|A^j \tilde B_I\| \leq C. \end{aligned}
Used by Proof
Lemma

Lemma 3

4CDC

Subdivide E^n into k_{\max}+1 blocks of size s each; call the individual blocks E^{n,[k]}, 0 \leq k \leq k_{\max}. Then, there holds

\begin{aligned} E^{n,[k]} = O(\Delta t^{\min\{2+k,q\}+1}). \end{aligned}
Proof

Proof

R8U1

The proof goes along the same lines as in [SealSchuetz19] and is hence omitted.

\sqcap\sqcup 501em\sqcap\sqcup =0pt=0

Lemma

Lemma 4

2PFX

The recursion for Z^n given in (?) can be explicitly written as:

\begin{aligned} \begin{split} Z^n = & \Delta t \sum_{j=0}^{n-1} A^j B_E \left(\Phi_{\text{E}}(Y^{n-j})-\Phi_{\text{E}}(W^{n-j})\right) \\ &+ \Delta t \sum_{j=0}^{n-1} A^j B_I \left(\Phi_{\text{I}}(Y^{n-j})-\Phi_{\text{I}}(W^{n-j})\right) \\ & + \frac{\Delta t^2}{2} \sum_{j=0}^{n-1} A^j \tilde B_E \left(\overset{\boldsymbol .}{\Phi}_{\text{E}}(Y^{n-j})-\overset{\boldsymbol .}{\Phi}_{\text{E}}(W^{n-j})\right) \\ &+ \frac{\Delta t^2}{2} \sum_{j=0}^{n-1} A^j \tilde B_I \left(\overset{\boldsymbol .}{\Phi}_{\text{I}}(Y^{n-j})-\overset{\boldsymbol .}{\Phi}_{\text{I}}(W^{n-j})\right) \\ &+ \sum_{j=0}^{n-1} A^j E^{n-j}. \end{split} \end{aligned}
Used by Proof
Proof

Proof

CQO5

This can be easily proved using (?) and an induction over n. Note that one has to take into account that Z^0 = 0 by definition.

\sqcap\sqcup 501em\sqcap\sqcup =0pt=0

Lemma

Lemma 5

ZDV4

Consider the following linear recursion:

\begin{aligned} x_n = \alpha (x_0 + \ldots + x_{n-1}) + \beta_n, \qquad n \geq 1, \end{aligned}

with \alpha, \beta_n \in \operatorname{\mathbb{R}} given for all n \in \operatorname{\mathbb{N}}. (As indicated, \beta_n is allowed to depend on n, while \alpha is not.) Also x_0 is supposed to be known. The analytical solution to this recursion is given by

\begin{aligned} x_n = \alpha (\alpha+1)^{n-1}x_0 + \sum_{j=1}^{n-1} \beta_j \alpha (1+\alpha)^{n-j-1} + \beta_n. \end{aligned}
Used by Proof
Proof

Proof

5Y4U

We proceed by induction. For n=1, we have x_1 = \alpha x_0 + \beta_1, which agrees with formula (5).

Now assume that (5) is correct for all n < N. Then, there holds:

\begin{aligned} x_N &= \alpha \sum_{n=0}^{N-1} x_n \\ &= \alpha x_0 + \alpha \sum_{n=1}^{N-1} \left(\alpha (\alpha+1)^{n-1}x_0 + \sum_{j=1}^{n-1} \beta_j \alpha (1+\alpha)^{n-j-1} + \beta_n\right) + \beta_N \\ &= \underbrace{\alpha x_0 + \alpha \sum_{n=1}^{N-1} \alpha (\alpha+1)^{n-1}x_0}_{=:I} + \underbrace{\alpha \sum_{n=1}^{N-1} \sum_{j=1}^{n-1} \beta_j \alpha (1+\alpha)^{n-j-1} + \alpha \sum_{n=1}^{N-1} \beta_n}_{=:II} + \beta_N. \end{aligned}

We compute the terms separately:

\begin{aligned} I &= \alpha x_0 \left(1 + \sum_{n=0}^{N-2} \alpha (\alpha + 1)^n \right) = \alpha x_0 \left(1 + \alpha \frac{(\alpha+1)^{N-1}-1}{\alpha}\right) \\ &= \alpha x_0 (\alpha+1)^{N-1}. \end{aligned}

Now for II, there holds via a switching of the summation that

\begin{aligned} II &= \alpha \sum_{n=1}^{N-1} \sum_{j=1}^{n-1} \beta_j \alpha (1+\alpha)^{n-j-1} + \alpha\sum_{n=1}^{N-1} \beta_n\\ &= \alpha \sum_{j=1}^{N-2} \beta_j \sum_{n=j+1}^{N-1} \alpha (1+\alpha)^{n-j-1} + \alpha \sum_{n=1}^{N-1} \beta_n \\ &= \alpha \sum_{j=1}^{N-2} \beta_j \left({(1+\alpha)^{N-j-1}}-1\right) + \alpha \sum_{n=1}^{N-1} \beta_n = \alpha \sum_{j=1}^{N-1} \beta_j (1 + \alpha)^{N-j-1}. \end{aligned}

All together, this shows that also x_N can be formed according to (5). The statement is hence true.

\sqcap\sqcup 501em\sqcap\sqcup =0pt=0

Theorem

Theorem 0.1

YVTF

Given that \Delta t is sufficiently small, and given the assumptions on the functions \Phi, \Phi_{\text{I}} and \Phi_{\text{E}} as done in Assumption 1, there is a constant C such that

\begin{aligned} Z^n \leq C \Delta t^2, \end{aligned}

and hence, the method is second-order convergent.

Proof

Proof

5Z7V

Note that due to Corollary 1, we can estimate terms like \|A^j B_E\| against fixed constants. Using the expression (4), we can hence compute

\begin{aligned} \|Z^n\| \leq &\ \Delta t L_{\Phi_{\text{E}}} \sum_{j=0}^{n-1} \|A^j B_E\| \|Z^{n-j}\| + \Delta t L_{\Phi_{\text{I}}} \sum_{j=0}^{n-1} \|A^j B_I\| \|Z^{n-j}\| \\&+ \frac{\Delta t^2}{2} L_{\overset{\boldsymbol .}{\Phi}_{\text{E}}} \sum_{j=0}^{n-1} \|A^j \tilde B_E\|\|Z^{n-j}\| + \frac{\Delta t^2}{2} L_{\overset{\boldsymbol .}{\Phi}_{\text{I}}} \sum_{j=0}^{n-1} \|A^j \tilde B_I\| \|Z^{n-j}\| \\&+ \sum_{j=0}^{n-1} \|A^j E^{n-j}\| \\ \leq \ &C\Delta t \sum_{j=0}^{n-1} \|Z^{n-j}\| + \sum_{j=0}^{n-1} \|E^{n-j}\|. \end{aligned}

Given that C \Delta t is smaller than one, we get the inequality

\begin{aligned} \|Z^n\| \leq \ &C\Delta t \sum_{j=1}^{n-1} \|Z^{n-j}\| + \sum_{j=0}^{n-1} \|E^{n-j}\|, \end{aligned}

with another constant C that does not depend on \Delta t or N. Note that summation of the first term begins at j=1. Now there holds that \|Z^n\| \leq \varepsilon_n, with \varepsilon_0 = 0 and \varepsilon_n, n > 0, defined as

\begin{aligned} \varepsilon_n = C \Delta t (\varepsilon_0 + \ldots + \varepsilon_{n-1}) + \sum_{j=0}^{n-1} \|E^{n-j}\|. \end{aligned}

This is exactly of form (5), and has hence the analytical solution

\begin{aligned} \varepsilon_n = \sum_{j=1}^{n-1} C \Delta t \left(\sum_{k=0}^{j-1} \|E^{n-j}\|\right) (1 + C\Delta t)^{n-j-1} + \sum_{j=0}^{n-1} \|E^{n-j}\|. \end{aligned}

We can estimate (1+C\Delta t)^{n-j-1} against e^{C T_{end}}, and because of La. 3, there then holds that

\begin{aligned} \varepsilon_n \leq C \Delta t^2. \end{aligned}

Note that the property \sum_{k=0}^{j-1} \|E^{n-j}\| can be estimated against C\Delta t^2. Note also that constants are subject to change. They do however never depend on N or \Delta t.

\sqcap\sqcup 501em\sqcap\sqcup =0pt=0

Remark

Remark 4

U68M

The structure of the matrix A as given in (Proof) is very interesting: it “pushes elements in vectors downwards." To facilitate the understanding of the following analysis, we show different exponents of A. Obviously, A^0 = \operatorname{Id}, the identiy matrix, and A^1 is given in (Proof). There holds, always given that k_{\max} is large enough:

\begin{aligned} A^2 = \left( \begin{matrix} \operatorname{\mathfrak{E}} & 0 & 0 & 0 & 0 & \cdots & 0& 0 & 0 \\ 0 & 0 & 0 & \operatorname{\mathfrak{E}} & 0 & \cdots & 0& 0 & 0 \\ 0 & 0 & 0 & 0 & \operatorname{\mathfrak{E}} & \cdots & 0& 0 & 0 \\ \vdots & \vdots & \vdots & \vdots & \vdots & \ddots &\vdots & \vdots & \vdots \\ 0 & 0 & 0 & 0 & 0 & \cdots & \operatorname{\mathfrak{E}} & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0 & \operatorname{\mathfrak{E}} & 0 \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots& 0 & 0 & \operatorname{\mathfrak{E}} \end{matrix} \right), \qquad A^3 = \left( \begin{matrix} \operatorname{\mathfrak{E}} & 0 & 0 & 0 & 0 & \cdots & 0& 0 & 0 \\ 0 & 0 & 0 & 0 & \operatorname{\mathfrak{E}} & \cdots & 0& 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & 0 \\ \vdots & \vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 & 0 & 0 & 0 & \cdots & \operatorname{\mathfrak{E}}& 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& \operatorname{\mathfrak{E}} & 0 \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \end{matrix} \right), \qquad \ldots \end{aligned}

Eventually, there is a limit matrix A^{\infty}, given as

\begin{aligned} A^{\infty} = \left( \begin{matrix} \operatorname{\mathfrak{E}} & 0 & 0 & 0 & 0 & \cdots & 0& 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ \vdots & \vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \\ 0 & 0 & 0 & 0 & 0 & \cdots & 0& 0 & \operatorname{\mathfrak{E}} \end{matrix} \right). \end{aligned}

More formally, we have A^j = A^{\infty} for all j \geq k_{\max} -1. This structure is important, because it significantly simplifies the convergence analysis. Essentially, it states that most contributions to the overall error come from higher corrections. Intuitively, this is desirable, because higher corrections are supposed to have smaller error contributions, at least asymptotically.

Lemma

Lemma 6

7F0W

Subdivide Z^n into k_{\max}+1 blocks of size s each, similarly to La. 3. Define \varepsilon_k^n, 0 \leq k \leq k_{\max} to be the infinity-norm of the k-th block. For n = 0, there is no error, and hence

\begin{aligned} \varepsilon_k^0 = 0, \qquad 0 \leq k \leq k_{\max}. \end{aligned}

Furthermore, for k = 0, the underlying consistency analysis is trivial, and hence \varepsilon_0^n can be bound by a positive constant C times \Delta t^2, i.e.,

\begin{aligned} \varepsilon_0^n \leq C \Delta t^2, \qquad 1 \leq n \leq N. \end{aligned}

The constant C depends of course on the analytical solution, the fluxes \Phi, the initial conditions w_0 and the like, but it does not depend on \Delta t or n. Furthermore, there is a constant C such that there holds for 1 \leq k < k_{\max} and 1 \leq n \leq N:

\begin{alignedat}{2} \varepsilon^n_k &\leq C \Delta t \left( \varepsilon_k^n + \varepsilon_{k-1}^n\right) + C \Delta t \sum_{j=1}^{n-1} \sum_{h=k}^{k_{\max}} \varepsilon_h^{n-j} + C\Delta t^{\min\{2+k,q\}}, \\ \varepsilon^n_{k_{\max}}&\leq C \Delta t \sum_{j=0}^{n-1} \left(\varepsilon_{k_{\max}-1}^{n-j} + \varepsilon_{k_{\max}}^{n-j}\right) + C\Delta t^{\min\{2+k_{\max},q\}}. \end{alignedat}
Remark

Remark 5

464M

Before proving this lemma, we point out a couple of salient features:

    40 Note that \varepsilon^n_{k_{\max}} has a global (i.e., over all n) dependence on \varepsilon^n_{k_{\max}-1}, while all the other \varepsilon^n_k do not have this kind of dependence on \varepsilon^n_{k-1}. 40 We have chosen to take the same constant C for both the expression of \varepsilon_0^n as well as for all the terms in the inequality for \varepsilon_k^n. This can be done without loss of generality, as we take the largest of all these constants.

Proof

Proof

H8F4

To prove (?), we consider the analytical expression of Z^n given in (4). Let us first treat the last term in (4), \sum_{j=0}^{n-1} A^j E^{n-j}. Due to La. 3, we know that there is a constant C such that E^{n-j,[k]} \leq C \Delta t^{\min\{2+k,q\}+1}. There holds

\begin{aligned} \left(\sum_{j=0}^{n-1} A^j E^{n-j}\right)^{[k]} \leq N C \Delta t^{\min\{2+k,q\}+1} \leq T_{end} C \Delta t^{\min\{2+k,q\}}. \end{aligned}

By (\cdot)^{[k]}, we denote the k-the block of a vector, again, 0 \leq k \leq k_{\max}. We have used the fact that \Delta t = \frac{T_{end}}{N} and that A^j “pushes elements downwards," so there will be no \Delta t contributions of lower orders than the ones given here. This explains why we carefully chose the red terms in Alg. 1 the way we did.

In a similar way, we treat the other terms. They can all be handled alike, so we only consider the term

\begin{aligned} &\Delta t \sum_{j=0}^{n-1} A^j B_I \left(\Phi_{\text{I}}(Y^{n-j}) - \Phi_{\text{I}}(W^{n-j)}\right) \\ = &\Delta t B_I \left(\Phi_{\text{I}}(Y^{n}) - \Phi_{\text{I}}(W^{n)}\right) + \Delta t \sum_{j=1}^{n-1} A^j B_I\left(\Phi_{\text{I}}(Y^{n-j}) - \Phi_{\text{I}}(W^{n-j)}\right). \end{aligned}

Note that the first term couples errors at correction level k-1 to those of k. Estimated, this gives, independent of whether k=k_{\max} or not, a contribution of

\begin{aligned} C \Delta t \left(\varepsilon_k^n + \varepsilon_{k-1}^n\right). \end{aligned}

For k < k_{\max}, due to the peculiar structure of A^j, A^jB_I remains a block-matrix; on the k-th block-row, only two blocks are filled.(Let us clarify what we mean by block-rows and block-columns: The matrices we are dealing with here are of size s \cdot (k_{\max}+1) \times s \cdot (k_{\max}+1). They can hence be subdivided into (k_{\max}+1)^2 blocks of size s\times s. According to the notation in Alg. 1, we begin counting by k=0. Block-row k means hence in the big matrix the rows from k(s+1) + 1 to (k+1)(s+1).) The block-columns thereof are j and j+1, with j \geq k. A generous estimate yields the contribution

\begin{aligned} C \Delta t \sum_{j=1}^{n-1} \sum_{h=k}^{k_{\max}} \varepsilon_h^{n-j}. \end{aligned}

(In fact, for j \geq k_{\max} -1, the block columns are k_{\max}-1 and k_{\max}, so sharper estimates could be used.) For k=k_{\max}, the non-zero block-columns are k_{\max}-1 and k_{\max}. This then gives the contribution

\begin{aligned} C \Delta t \sum_{j=1}^{n-1} \left(\varepsilon_{k_{\max}-1}^{n-j} + \varepsilon_{k_{\max}}^{n-j}\right). \end{aligned}

This yields the desired result.

\sqcap\sqcup 501em\sqcap\sqcup =0pt=0

Proposition

Proposition 1

ZY9T

From the results in La. 6, we conjecture that the method is convergent with the k-dependent orders. That is, we postulate that each of the correction steps satisfy

\begin{aligned} e^n_k &= \mathcal{O}\left(\Delta t^{\min\{2+k,q\}}\right), &\quad k &< k_{\max}, \end{aligned}

and that the final correction step satisfies

\begin{aligned} e^n_{k_{\max}} &= \mathcal{O}\left(\Delta t^{\min\{1+k_{\max},q\}}\right), &\quad k &= k_{\max}. \end{aligned}
Uses Lemma 6
Remark

Remark 6

610M

Please note that the last correction step does not increase the order. This is different to the behavior of the algorithm in [SealSchuetz19]; it is a consequence of the fact that we have modified the values at time level t^n to make the algorithm ready for parallelism.

Remark

Remark 7

WKWA

Although we only present numerical results that support Proposition 1 – and we only know from Thm. 0.1 that the method is at-least second order convergent – we can very well see the underlying structure from Eqs. (?)-(?): For k < k_{\max}, \varepsilon_k^n essentially possesses the contributions \Delta t \varepsilon_{k-1}^n, \Delta t \sum_{j=1}^{n-1}\sum_{h=k}^{k_{\max}} \varepsilon_h^{n-j} and \Delta t^{\min\{2+k,q\}}. (We have neglected the constants here.) If we assume that for increasing k, the order in \Delta t of \varepsilon_k^n would also increase or at least not decrease, the contribution \Delta t \sum_{j=1}^{n-1}\sum_{h=k}^{k_{\max}} \varepsilon_h^{n-j} scales as \mathcal{O}(\varepsilon_k^n). Furthermore, if the order between \varepsilon_{k}^n and \varepsilon_{k-1}^n differs by one, then \Delta t \varepsilon_{k-1}^n scales again as \varepsilon_k^n. The final constant term \Delta t^{\min\{2+k,q\}} then gives the overall order.

Uses Lemma 6
Remark

Remark 8

TF8J

Note that a similar strategy can be pursued to obtain an adaptation criterion for the IMEX-MD scheme. Since the exact solution is not known for general problems, one could think about evaluating the change of the numerical solution after each iteration. If the iterates do not differ more than a user-defined threshold, no further correction steps are performed. Also timestep adaptation could be taken into account. We leave the detailed analysis of an adaptation of Alg. 1 in this direction to future investigations.

Algorithm

Algorithm 2 (\methodt{q,\km})

TNVU

To advance the solution to Eq. (?) in time, we compute values w^{n,[k ],{l}}. The meaning of the parameters n, k and l is explained in Eq. (?) and thereafter. To account for the initial conditions, define

\begin{aligned} w^{-1,[k],{s}} := w_0. \end{aligned}

First, the values w^{n,[0],{l}} are filled using a straightforward second-order IMEX-Taylor method with an improved initial condition.

    40 Predict. Solve the following expression for w^{n,[0],{l}} and 1 \leq l \leq s:

    \begin{aligned} \begin{split} w^{n,[0],{l}} &:= {\color{blue}w^{n-1,[1],{s}}} \\ &+ c_l\Delta t \left(\Phi_{\text{I}}^{n,[0],{l}} + {\color{blue}\Phi_{\text{E}}^{n-1,[1],{s}}}\right) + \frac{(c_l\Delta t)^2}{2} \left({\color{blue}\overset{\boldsymbol .}{\Phi}_{\text{E}}^{n-1,[1],{s}}} - \overset{\boldsymbol .}{\Phi}_{\text{I}}^{n,[0],{l}}\right). \end{split} \end{aligned}

    The modified terms ({w^{n-1,[1],{s}}}, {\Phi_{\text{E}}^{n-1,[1],{s}}}, and {\overset{\boldsymbol .}{\Phi}_{\text{E}}^{n-1,[1],{s}}}, marked in blue) simply use one higher iterate than the one found in Alg. 1. This makes the predictor third-order accurate due to its improved local truncation error.

    40 Correct. Next, the correction steps take place to fill the values of w^{n,[k],{l}} for 1 \leq k \leq k_{\max}. Solve the following for w^{n,[k+1],{l}}, for each 2 \leq l \leq s and each 0 \leq k < k_{\max}:

    \begin{aligned} \begin{split} w^{n,[k+1],{1}} &:= {\color{VioletRed}w^{n-1,[k+2],{s}}}, \\ w^{n,[k+1],{l}} &:= {\color{VioletRed}w^{n-1,[k+2],{s}}} \\ & + {\Delta t} \left( \Phi_{\text{I}}^{n,[k+1],{l}} - \Phi_{\text{I}}^{n,[k],{l}}\right) - \frac{\Delta t^2}{2} \left(\overset{\boldsymbol .}{\Phi}_{\text{I}}^{n,[k+1],{l}}- \overset{\boldsymbol .}{\Phi}_{\text{I}}^{n,[k],{l}}\right) \\ &+\; \mathcal I_l(\color{blue}\Phi^{n,[k+1],{0}}, \ldots,\Phi^{n,[k+1],{l-1}},\color{black} \Phi^{n,[k],{l}}, \ldots, \Phi^{n,[k],{s}}) \end{split} \end{aligned}

    The red term(s) (w^{n-1,[k+2],{s}}) are the same modified values we implemented in Alg. 1. The blue terms \Phi^{n,[k+1],{0}}, \ldots,\Phi^{n,[k+1],{l-1}} are evaluated at iterate k+1 instead of k. This produces smaller errors and requires less storage. Again, if k = k_{\max} -1, then the k+2 in the red terms are replaced by k_{\max} in order to close the recursion.

    40 Update. In order to retain a first-same-as-last property, we update the solution with

    \begin{aligned} w^{n+1} := w^{n,[k_{\max}],{s}}. \end{aligned}

Source and licence

The text on this page is from arXiv:2101.07846v1 by Jochen Schütz, David C. Seal and Jonas Zeifang, under the licence CC BY 4.0. The corpus made these changes: it read the items out of the LaTeX source, it expanded the macros of the paper, it put each proof after its statement, and it converted the text to HTML. The formulas are the TeX of the paper, and KaTeX renders them. A formula or a reference can look different from the PDF. The page is published under CC BY 4.0.

The record of each item is in analysis/objects/2101/2101.07846.jsonl.