In numerical analysis, the Shanks transformation is a non-linear series acceleration method to increase the rate of convergence of a sequence. This method is named after Daniel Shanks, who rediscovered this sequence transformation in 1955. It was first derived and published by R. Schmidt in 1941.[1]
For a sequence
\left\{am\right\}m\inN
A=
infty | |
\sum | |
m=0 |
am
is to be determined. First, the partial sum
An
An=
n | |
\sum | |
m=0 |
am
and forms a new sequence
\left\{An\right\}n\inN
An
A
n\toinfty.
S(An)
An
S(An)=
| |||||||||||||
An+1-2An+An-1 |
=An+1-
(An+1-An)2 | |
(An+1-An)-(An-An-1) |
where this sequence
S(An)
An.
2(A | |
S | |
n)=S(S(A |
n)),
3(A | |
S | |
n)=S(S(S(A |
n))),
Note that the non-linear transformation as used in the Shanks transformation is essentially the same as used in Aitken's delta-squared process so that as with Aitken's method, the right-most expression in
S(An)
S(An)=An+1-
(An+1-An)2 | |
(An+1-An)-(An-An-1) |
S(An)=
| |||||||||||||
An+1-2An+An-1 |
As an example, consider the slowly convergent series[3]
4
infty | |
\sum | |
k=0 |
(-1)k
1 | |
2k+1 |
=4\left(1-
1 | |
3 |
+
1 | |
5 |
-
1 | |
7 |
+ … \right)
which has the exact sum π ≈ 3.14159265. The partial sum
A6
In the table below, the partial sums
An
S(An)
2(A | |
S | |
n) |
3(A | |
S | |
n) |
n
n | An | S(An) |
|
| ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 4.00000000 | — | — | — | ||||||||||||
1 | 2.66666667 | 3.16666667 | — | — | ||||||||||||
2 | 3.46666667 | 3.13333333 | 3.14210526 | — | ||||||||||||
3 | 2.89523810 | 3.14523810 | 3.14145022 | 3.14159936 | ||||||||||||
4 | 3.33968254 | 3.13968254 | 3.14164332 | 3.14159086 | ||||||||||||
5 | 2.97604618 | 3.14271284 | 3.14157129 | 3.14159323 | ||||||||||||
6 | 3.28373848 | 3.14088134 | 3.14160284 | 3.14159244 | ||||||||||||
7 | 3.01707182 | 3.14207182 | 3.14158732 | 3.14159274 | ||||||||||||
8 | 3.25236593 | 3.14125482 | 3.14159566 | 3.14159261 | ||||||||||||
9 | 3.04183962 | 3.14183962 | 3.14159086 | 3.14159267 | ||||||||||||
10 | 3.23231581 | 3.14140672 | 3.14159377 | 3.14159264 | ||||||||||||
11 | 3.05840277 | 3.14173610 | 3.14159192 | 3.14159266 | ||||||||||||
12 | 3.21840277 | 3.14147969 | 3.14159314 | 3.14159265 |
The Shanks transformation
S(A1)
A24.
3(A | |
S | |
3) |
A0,\ldots,A6.
An
The Shanks transformation is motivated by the observation that — for larger
n
An
An=A+\alphaqn,
with
|q|<1
A
n\toinfty.
n-1,
n
n+1
An-1=A+\alphaqn-1 , An=A+\alphaqn and An+1=A+\alphaqn+1.
These three equations contain three unknowns:
A,
\alpha
q.
A
A=
| |||||||||||||
An+1-2An+An-1 |
.
In the (exceptional) case that the denominator is equal to zero: then
An=A
n.
The generalized kth-order Shanks transformation is given as the ratio of the determinants:[4]
Sk(An)=
\begin{vmatrix | |
A |
n-k& … &An-1&An\\ \DeltaAn-k& … &\DeltaAn-1&\DeltaAn\\ \DeltaAn-k+1& … &\DeltaAn&\DeltaAn+1\\ \vdots&&\vdots&\vdots\\ \DeltaAn-1& … &\DeltaAn+k-2&\DeltaAn+k-1\\ \end{vmatrix} }{ \begin{vmatrix} 1& … &1&1\\ \DeltaAn-k& … &\DeltaAn-1&\DeltaAn\\ \DeltaAn-k+1& … &\DeltaAn&\DeltaAn+1\\ \vdots&&\vdots&\vdots\\ \DeltaAn-1& … &\DeltaAn+k-2&\DeltaAn+k-1\\ \end{vmatrix} },
\DeltaAp=Ap+1-Ap.
An
k
An=A+
k | |
\sum | |
p=1 |
\alphap
n. | |
q | |
p |
This model for the convergence behaviour contains
2k+1
An-k,An-k+1,\ldots,An+k
A,
S1(An)=S(An).
The generalized Shanks transformation is closely related to Padé approximants and Padé tables.[4]
Note: The calculation of determinants requires many arithmetic operations to make, however Peter Wynn discovered a recursive evaluation procedure called epsilon-algorithm which avoids calculating the determinants.[5] [6]