打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
圆周率用电脑有几种算法?

一说起圆周率π,很多人就想到祖冲之老爷子的割圆术。

说实话,祖大人也挺无奈的,从我们小学就开始割圆,一直割到大学还在割。

但割圆术只适合手算,如何用电脑算π呢?

泰勒展开

泰勒展开在科学计算中简直有着匪夷所思的变态威力。

之前我有一篇文章泰勒为何要展开? 泰勒公式有什么神奇作用?介绍了什么是泰勒展开,它可以把复杂函数转换成加减乘除,比如sinx:

之所以要展开,是因为通用计算机本质上只能计算加减乘除。

用泰勒展开计算π

首先想到的思路就是,反三角函数,根据定义有:

那么,接下来的问题就是,

如何计算arctan(1)

有人说,直接调用C语言库函数atan(double,double)不就行了。

确实,这可以完成计算,然而,这是一种令人不齿的开挂行为,就好像我问怎么跑完马拉松,你说你开车一溜烟就跑完了一样。

库函数是别人写好的,我们现在是思索如何实现计算,而不是考虑如何调用。

至此,我们只好请出祖传配方,把arctan(x)进行泰勒展开:

然后,令x = 1,得到:

格雷戈里-莱布尼茨公式

它被称为莱布尼茨级数,也被称为格雷戈里-莱布尼茨级数,用以纪念莱布尼茨同时代的天文学家兼数学家詹姆斯·格雷戈里。

看起来很吊是不是······

但是啊但是,还不够吊,因为问题还没完:

这个级数收敛极慢。

比如,算到+4/9,也就是前五项,结果仅为3.3396,误差有0.2之多。

它要到算500000项之后,才会精确到小数点后五位:

就算电脑也算得太累了。

何况莱布尼兹(1646年7月1日-1716年11月14日)当年是没有电脑的!

加快收敛

于是,人们尝试改进,希望能快点计算。

英国数学家梅钦在1706年用上面的级数,发掘了一个可以快速收敛的公式:

配合上面arctan(x)泰勒展开,梅钦依据此公式(没有电脑),把圆周率计算到小数点后一百多位。

英国数学家威廉·谢克斯花15年的时间以此计算到小数点后707位,不过在第528位时出错,因此后面的都不正确了。

微微杯具就是了。

神奇公式

现代有了电脑,我们希望更快的收敛速度,因此科学家在寻找新的级数。

历史总是留给吊人的,也总是会生产一些吊人的。

比如:

拉马努金公式

这玩意被称为拉马努金公式,是印度科学家拉马努金发明的。

第一位用拉马努金公式计算π并取得进展的是比尔·高斯珀,他在1985年计算了小数点后一千七百万位。

收敛再快一点?还有楚德诺夫斯基公式

楚德诺夫斯基公式

楚德诺夫斯基兄弟于1989年算得π小数点后10亿(10⁹)位,法布里斯·贝拉于2009年算得2.7千亿(2.7×10¹²)位,亚历山大·易和近藤滋在2011年算得一万亿(10¹³)位。


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
计算圆周率的传奇:有人用一辈子,有人只用一个小时
为什么π很重要
数学家如何计算圆周率到小数点后的无穷位数呢?
【圆周率小数点后21500位】
圆周率的平方与地球重力加速度数值很接近, 它们有深层次联系吗?
圆周率怎么计算来的?教你利用欧拉恒等式,生成圆周率万能公式!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服