Strang splitting explained

In applied mathematics Strang splitting is a numerical method for solving differential equations that are decomposable into a sum of differential operators. It is named after Gilbert Strang. It is used to speed up calculation for problems involving operators on very different time scales, for example, chemical reactions in fluid dynamics, and to solve multidimensional partial differential equations by reducing them to a sum of one-dimensional problems.

Fractional step methods

As a precursor to Strang splitting, consider a differential equation of the form

d{y
} = L_1 + L_2

where

L1

,

L2

are differential operators. If

L1

and

L2

were constant coefficient matrices, then the exact solution to the associated initial value problem would be

y(t)=

(L1+L2)t
e

y0

.

If

L1

and

L2

commute, then by the exponential laws this is equivalent to

y(t)=

L1t
e
L2t
e

y0

.

If they do not, then by the Baker–Campbell–Hausdorff formula it is still possible to replace the exponential of the sum by a product of exponentials at the cost of a second order error:

(L1+L2)t
e

y0=

L1t
e
L2t
e

y0+l{O}(t2)

.

This gives rise to a numerical scheme where one, instead of solving the original initial problem, solves both subproblems alternating:

\tildey1=

L1\Deltat
e

y0

y1=

L2\Deltat
e

\tildey1

\tildey2=

L1\Deltat
e

y1

y2=

L2\Deltat
e

\tildey2

etc.

In this context,

L1\Deltat
e
is a numerical scheme solving the subproblem
d{y
} = L_1

to first order. The approach is not restricted to linear problems, that is,

L1

can be any differential operator.

Strang splitting

Strang splitting extends this approach to second order by choosing another order of operations. Instead of taking full time steps with each operator, instead, one performs time steps as follows:

\tildey1=

L
\Deltat
2
1
e

y0

\bary1=

L2\Deltat
e

\tildey1

y1=

L
\Deltat
2
1
e

\bary1

\tildey2=

L
\Deltat
2
1
e

y1

\bary2=

L2\Deltat
e

\tildey2

y2=

L
\Deltat
2
1
e

\bary2

etc.

One can prove that Strang splitting is second order by using either the Baker-Campbell-Hausdorff formula, Rooted tree analysis or a direct comparison of the error terms using Taylor expansion. For the scheme to be second order accurate,

e

must be a second order approximation to the solution operator as well.

See also

References