用计算方法中的外推法来计算π的近似值


如上图所示,单位圆的内接正$n$边形的周长为$2nsin(\frac{\pi}{n})$,而单位圆的周长为$2\pi$,因此,我们有:
$$\pi=\lim_{n\to\infty}nsin(\frac{\pi}{n})$$


由$sin(x)$在$x$处的泰勒展开式$sin(x)=x-\frac{x^3}{3!}+\frac{x^5}{5!}-\cdots$可知:
\begin{align}
\pi
&=\lim_{n\to\infty}nsin(\frac{\pi}{n}) \\
&=\lim_{n\to\infty}n(\frac{\pi}{n}-\frac{\pi^3}{3!n^3}+\frac{\pi^5}{5!n^5}-\cdots) \\
&=\lim_{n\to\infty}(\pi-\frac{\pi^3}{3!n^2}+\frac{\pi^5}{5!n^4}-\cdots) \label{eq:T00} \\
&=\pi+O((\frac{1}{n})^2)
\end{align}

我们记其为$T_{0}^{(0)}$
在上述正$n$变形的基础上,将圆继续用正$2n$变形割细,则可得正$2n$变形的周长为$4nsin(\frac{\pi}{2n})$,所以:
\begin{align}
\pi
&=\lim_{n\to\infty}2nsin(\frac{\pi}{2n}) \\
&=\lim_{n\to\infty}(\pi-\frac{\pi^3}{3!(2n)^2}+\frac{\pi^5}{5!(2n)^4}-\cdots) \\
&=\pi+\lim_{n\to\infty}(-\frac{\pi^3}{3!4n^2}+\frac{\pi^5}{5!16n^4}-\cdots)\label{eq:T01} \\
&=\pi+O((\frac{1}{n})^2)
\end{align}
上式记为$T_{0}^{(1)}$。
做运算$\frac{\eqref{eq:T01}×4-\eqref{eq:T00}}{3}$可得:
\begin{align}
\pi
&=\pi+\lim_{n\to\infty}(-\frac{\pi^5}{5!4n^4}-\cdots) \label{eq:T11} \\
&=\pi+O((\frac{1}{n})^4)
\end{align}
上式记为$T_{1}^{(1)}$。由上述计算过程可知,利用理查森(Richardson)外推算法将$\pi$的误差阶由$O((\frac{1}{n})^2)$提高到$O((\frac{1}{n})^4)$,从而提高计算精度。重复上述过程可得:

$T_{m}^{(k)}$ $m=0$ $m=1$ $m=2$
$k=0$ $2.5981$ $3.1340$ $3.1416$
$k=1$ $3.0000$ $3.1411$
$k=2$ $3.1058$

其中:
\begin{align}
&T_{0}^{(0)} = 3sin(\frac{\pi}{3}) \\
&T_{0}^{(1)} = 6sin(\frac{\pi}{6}) \\
&T_{0}^{(2)} = 12sin(\frac{\pi}{12}) \\
&T_{1}^{(0)} = \frac{1}{3}(4T_{0}^{(1)}-T_{0}^{(0)})\\
&T_{1}^{(1)} = \frac{1}{3}(4T_{0}^{(2)}-T_{0}^{(1)})\\
&T_{2}^{(0)} = \frac{1}{15}(16T_{1}^{(1)}-T_{1}^{(0)})
\end{align}

所以可得$\pi$的近似值为:3.14158。

参考文献: