TransWikia.com

How do I apply BDF2 in a STRANG splitting

Computational Science Asked by Chack.Flack on February 21, 2021

I have a 3D diffusion equation that I want to solve using a time splitting (2D+1D). Assume that $A$ is the 2D discrete diffusion operator and $B$ is the 1D discrete diffusion operator.

I want to use a STRANG splitting to ensure a global 2nd order of precision :
begin{equation}
frac{partial f}{partial t}=frac{1}{2}Af
frac{partial f}{partial t}=Bf
frac{partial f}{partial t}=frac{1}{2}Af
end{equation}

And for each time integration, I want to apply the BDF2 implicit formula to ensure stability and a local 2nd order precision:
begin{equation}
frac{partial f}{partial t}approx frac{f^{n+1}-frac{4}{3}f^n+frac{1}{3}f^{n-1}}{frac{2}{3}Delta t}
end{equation}

My question is : for the time iteration $nDelta t$, what is the $f^{n-1}$ of each stage of the splitting ? Is it the state of $f$ at the previous time iteration or the previous splitting stage ?

To be more literal, do I follow this algorithm ?
begin{equation}
f0,f1rightarrow(frac{Delta t}{2} A) f21
f1,f21 rightarrow(Delta t B) f22
f21,f22rightarrow(frac{Delta t}{2} A) f2
end{equation}

and for the following iteration we initialize $f0=f22$ and $f1=f2$.

Or this one ?
begin{equation}
f0,f1rightarrow(frac{Delta t}{2}A) f21
f0,f21 rightarrow(Delta t B) f22
f0,f22rightarrow(frac{Delta t}{2} A) f2
end{equation}

and for the following iteration we initialize $f0=f1$ and $f1=f2$.

Is there another way to ensure an unconditionnaly stable time integration splitting with a global and local 2nd order ?

One Answer

If you set $f_{n-1}$ to the previous result of the BDF integration (i.e. without any influence from the other terms integrated during the splitting process in-between to successive calls to the BDF method), I think the intermediate split integration of the other terms will act as a discontinuity or, worse, you will just "forget" the integration that have been done in between the two calls to the BDF method. The best bet is just to restart the BDF method using a one-step method, which may make it much less efficient... The article "A note on splitting errors for advection-reaction equations" by Hundsdorfer and Verwer also treats this problem and shows that it can lead to an $O(1)$ global error...

(and if I am mistaken, please explain in a comment ;) )

Answered by Laurent90 on February 21, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP