拉马努金的计算π的公式是怎么推导出来的?

拉马努金的计算π的公式是怎么推导出来的?

笔者在《π与拉马努金》一文中提到了夹逼法或逼近法计算π的方法因其收敛速度太慢已经被淘汰了,于是有读者问数学奇才拉马努金采用的是怎样的更快的方法呢?他是怎样推导出来的呢?由于笔者还没找到介绍拉马努金那个公式的推导方法的文章,所以只能介绍下拉马努金公式的基本方向,那就是利用二项式展开公式,找到一个收敛比较快的有关π的展开级数,下面是一个例子:

如上图因为已知单位圆的函数表达式如下:

x^{2}+y^{2}=1 移项后可改写为: y=(1-x^{2})^{\frac{1}{2}}

那么第一象限下面积就等于该函数自变量x在0~1之间的定积分:

S= \int_{0}^{1}{(1-x^{2})^{\frac{1}{2}}}

又因为第一象限的内圆的面积为单位圆面积的四分之一,所以有

S=\frac{1}{4}π*r^{2}=\frac{1}{4}π*1^{2}=\frac{1}{4}π

把上式代入①中:

\frac{π}{4}=\int_{0}^{1}{(1-x^{2})^{\frac{1}{2}}}

π=4\int_{0}^{1}{(1-x^{2})^{\frac{1}{2}}}

不过这样计算起来收敛速度还不够快,我们看看当x=0.5时的圆弧下面积应该是上面的扇形面积与下面的三角形面积之和:

扇形面积= \frac{1}{3}*\frac{1}{4}πr^{2}=\frac{1}{3}*\frac{1}{4}π1^{2}=\frac{1}{3}*\frac{1}{4}π=\frac{1}{12}π

三角形的面积= \frac{1}{2}*0.5*h=\frac{1}{2}*0.5*\frac{\sqrt{3}}{2}=\frac{\sqrt{3}}{8}

根据积分的定义自变量0~0.5之间积分等于曲线下的面积,于是下式成立: \frac{π}{12}+\frac{\sqrt{3}}{8}=\int_{0}^{0.5}{(1-x^{2})^{\frac{1}{2}}}

整上式理得:

π=12({\int_{0}^{0.5}{(1-x^{2})^{\frac{1}{2}}}-\frac{\sqrt{3}}{8}} )

剩下的问题是如何计算等式右边的积分值了,我们知道二项式的展开公式为:

(1+x)^{n}=1+nx+\frac{n(n-1)}{2!}x^{2}+\frac{n(n-1)(n-2)}{3!}x^{3}+……+\frac{n(n-1)(n-2)……(n-1+1)}{k!}x^{n}

但是这里n不再是正整数,根据二项式的推广,在n为小数时也成立,不过此时的n不再与行数有关系,仅仅是函数的幂指数,将上式中的n用二分之一代入得:

(1+x)^{\frac{1}{2}}=1+\frac{1}{2}x+\frac{\frac{1}{2}(\frac{1}{2}-1)}{2!}x^{2}+\frac{\frac{1}{2}(\frac{1}{2}-1)(\frac{1}{2}-2)}{3!}x^{3}+\frac{\frac{1}{2}(\frac{1}{2}-1)(\frac{1}{2}-2)(\frac{1}{2}-3)}{4!}x^{4}……


(1+x)^{\frac{1}{2}}=1+\frac{1}{2}x-\frac{1}{8}x^{2}+\frac{3}{48}x^{3}-\frac{5}{128}x^{4}……

再将 x=-x^{2} 代入上式: (1-x^{2})^{\frac{1}{2}}=1-\frac{1}{2}x^{2}-\frac{1}{8}x^{4}-\frac{3}{48}x^{6}-\frac{5}{128}x^{8}……

对上式两边积分: \int_{0}^{0.5}(1-x^{2})^{\frac{1}{2}}=\int_{0}^{0.5}1-\frac{1}{2}x^{2}-\frac{1}{8}x^{4}-\frac{3}{48}x^{6}-\frac{5}{128}x^{8}……

=\int_{0}^{0.5}x-\frac{1}{2*3}*x^{3}-\frac{1}{8*5}*x^{5}-\frac{3}{48*7}*x^{7}-\frac{5}{128*9}*x^{9}……

=\left[x-\frac{1}{2*3}*x^{3}-\frac{1}{8*5}*x^{5}-\frac{3}{48*7}*x^{7}-\frac{5}{128*9}*x^{9}\right]_{0}^{\frac{1}{2}}

笔者计算了上述前五项得:

= 0.5-0.020833333-0.00078125-0.000069754-0.000008477

再将上述结果代入式③中得:

π=12({{\int_{0}^{0.5}{(1-x^{2})^{\frac{1}{2}}}-\frac{\sqrt{3}}{8}} })

=12*(0.5-0.020833333-0.00078125-0.000069754-0.000008477-0.216506351)

=3.14161009(为了保证计算精度笔者把计算器的小数点定到了9位)

就获得了精确到小数点后第5位的π值,与真值的误差仅为十万分之二,而且仅用了几个小时,这可是π诞生几百年后大名鼎鼎的古希腊天文学家托勒密所计算出来的精度。利用这个公式要达到德国人鲁道夫花费了毕生时间利用计算 2^{64} 边形周长所达到的精度,也只要计算上述级数的前50项就可以达到了,过去古人的几十年的计算,而今只需朝夕之功夫即可完成。真可谓“天上一日,地上已十年”!。

笔者又努力了一下利用excell表格的函数功能做了一行带公式的算法表格,然后再复制粘贴了19行就把上述公式算到了第21项,结果如下:

得到的π值是3.141592654,而真值是3.141592653,精确到了小数点后第8位,误差仅为十亿分之一。这样粘下去的话似乎很轻松地能把π算到任意位数,但是恐怕再复制粘十行就要超过我的笔记本电脑的最大的整数位数了吧,所以就此打住了!

而拉马努金的超级公式

\frac{1}{\pi}=\frac{2\sqrt{2}}{99^{2}}*\sum_{k=0}^{\infty}{\frac{(26390k+1103)}{396^{4k}}*\frac{(4k)!}{k!}}

应该是上述级数积分求和方法的极致的发展。

编辑于 2021-04-22 15:24

文章被以下专栏收录

    自由科学家

    自由地研究科学出于纯粹的企图了解大自然奥秘的好奇心