pi六轴算法_π 是怎么算出来的?

不妨先看看古人是如何确定π是一个常数,并通过迭代法最终求得该常数的近似值的。

π的历史简介

众所周知,

可以说,它是世界上最有名的无理常数了,代表的是一个圆的周长与直径之比或称为“圆周率”。公元前250年左右,阿基米德给出了“圆周率”的估计值在

之间,也即是在

之间。

中国南北朝时期的著名数学家祖冲之(429-500)首次将“圆周率”精算到小数第七位,即在3.1415926和3.1415927之间,他提出的“密率与约率”对数学的研究有重大贡献。直到15世纪,阿拉伯数学家阿尔·卡西才以“精确到小数点后17位”打破了这一纪录。

代表“圆周率”的字母

是第十六个希腊字母的小写。也是希腊语 περιφρεια(表示周边,地域,圆周)的首字母。1706年英国数学家威廉·琼斯(William Jones, 1675-1749)最先使用“

”来表示圆周率。1736年,瑞士数学家欧拉(Leonhard Euler, 1707-1783)也开始用表示圆周率。从此,

便成了圆周率的代名词。

π为什么是常数?

介绍完一些关于

的来历后,我准备着手沿着古人的方式去寻找

,但此时我发现忽略了一个重要的前提条件——为什么π是一个常数?即为什么所有圆的周长和直径之比为一个定值,这一点似乎并不能够自然而然地就得到。因此在寻找这个常数之前,先要做的应当是证明“圆的周长与直径之比确实是一个常数”。

如上图所示,以点O为圆心作两个半径不同的圆,小圆的半径为

,周长为

;大圆的半径为

,周长为

。分别作两个圆的内接正

边形(

为偶数),边长分别为

,且保证正两个

边形过圆心的对角线重合。

那么有

因此

所以有

设小正

边形和大正

边形的周长分别为

,则有

所以有

由于当

时,

,即取极限或者说是逼近的思想,当边数区域无穷,内接多边形就近似是一个圆了,后面寻找

时还会再次用到这个思想。

所以就有

,表示的是:对于半径不同的圆,其各自周长与半径的比为定值,或者说为常数,记该常数为2

,则圆的周长与直径之比为

,当然也是一个常数,证明完毕。

好,既然圆的周长和直径之比是一个常数,下一步要做的就是去寻找这个常数或它的近似值了。

我们可以从书中、从网上、从各种我们能够想到的渠道获得这个神奇的常数。不过,如果只给你一支笔、一张纸,你能否找到它的近似值呢?

阿基米德的智慧

阿基米德(Archimedes, 287-212 BC) 精度高达99.9%的

,在他那个年代还没有定义小数,甚至连“0”的定义都没有(相传“0”是到了公元5世纪才由印度人最先用于计算之中),那么他当年是怎么计算π的呢?Archimedes 287-212 BC (图片来源: Wikipedia)

在得到圆周率之前,阿基米德当然无法知道一个圆的周长,但是他可以从他知道的开始,比如正方形(实际上他用的是正六边形,为了演示方便,这里从正方形开始)。(图片来源: betterexplained)

对于上图中一个已知直径为1的单位圆(其周长即为

),可以以其直径为边长作出其外切正方形,也可以以其直径为对角线作出其内接正方形。不管圆的周长是多少,其总满足大于内接正方形的周长,小于外切正方形的周长。

外切正方形周长:

内接正方形周长根据勾股定理有:

假设现在

的大小未知,我们只能肯定

在2.8到4之间,先取个中间值作为

的估计值,约等于3.4。我们发现这样精度很低,因为用4边形来估算实在是太“粗糙”了,为了提高这种方法的精度,可以用边数更多的正多边形来逼近Archimedes pi (图片来源: Wikipedia)

可以看出,到了正八边形时,内接八边形与外切八边形之间的“间隙”比正方形的情况小了。此时

的估算值相对于正方形的情况会有一个精度上的提升。但是,现在的问题是:八边形的周长如何计算?而且就算把八边形的周长计算出来了,那16边形、32边形岂不是精度更高,那又该怎么计算?

正多边形逼近

下面需要用到两条基本定理:

定理一:半圆的内接三角形为直角三角形,且直角顶点在圆周上。

定理二:圆的弦所对应的圆周角为其所对应的圆心角的一半。

定理一的证明,证明半圆的内接三角形为直角三角形:

对于上图,令半径为

的半圆圆心在坐标原点,三角形的一边为半圆直径,一个顶点

在半圆的圆周上,坐标为

则有:

根据勾股定理可知,

定理二的证明:即“圆上同一根弦所对应的圆周角为圆心角的一半”,可以用下图证明:

对于

,因为

,即为等腰三角形。有

;又因为外角等于不相邻的量内角的和,所以

,因此有

。即圆上的一条弦所对应的圆周角是其所对应圆心角的一半。

对于内接多边形:

如下图所示,对于直径为1的圆,设内接多边形的每个边的边长为

,每个边对应的圆心角为

根据定理一和二,可以得出,内接多边形的边长

对于外切多边形

如下图所示,易得,外切多边形的边长为

所以,对于正方形

单位圆内接正方形的周长为:

单位圆外切正方形的周长为:

而对于正八边形

单位圆内接正八边形的周长为:

单位圆外切正八边形的周长为:

因此,对于正

边形

单位圆内接正

边形的周长为:

单位圆外切正n边形的周长为:

对于我们来说,问题似乎已经解决了,只要

足够大,结果就会很精确,可以通过不停地增大

直到直达到想要的精度。

但是,又忽略了一个问题!阿基米德那个时代并没有计算器,不像今天,想算

或者

,So easy~只需要按几个键就行了。因此,直接用三角函数计算在当时其实是行不通的!

得换换思路了!

阿基米德迭代算法

阿基米德不愧是数学大师。为了解决这一棘手的问题,阿基米德发明了一种“迭代算法”:

为了方便计算,将内接和外切多边形的边数定为

个,

为整数,且

,如下图所示。

内接

边形的边长为

,则其周长为

;外切

边形的边长为

,则其周长为

如果令正

边形的边长所对应的圆心角为

,由上面的推导知:

内接正

边形的边长

外切正

边形的边长

那么,正

边形的边长所对应圆心角为

,由上面的推导知:

内接正

边形的边长

外切正

边形的边长

有以下递推公式:

由此,可以计算外切正

边形的周长

以及内接正

边形的周长

即:

可以注意到的是:

的“调和平均数”;

的“几何平均数”。

通过这样的递推公式,可以直接以内接及外切正

边形的周长来计算内接及外切正

边形的周长,成功避免了三角函数的引入。

通过递推公式,可以计算得到以下结果:

可以看出,当正多边形的边数到达

时,已经有了不错的精度,而阿基米德当年用的是正六边形,方法是一样的,他计算了正

边形、正

边形、正

边形和正

边形。那他为什么没有继续算下去?

前面已经说了,公元前250年人们还没有发明小数,人们只能用分数来近似各个根号项所得到的无理数,当近似项增多,误差就会随之增大,在这种情况下,阿基米德算到了正

边形,得到π的值在

之间,计算精度达到了

,在那个时代已经是很高的精度了。

所以在其后的很长一段时间里,人们用

来近似圆周率,取的正是阿基米德计算结果所在区间的上界。

中国人的贡献

不过,后面有人发现了一个神秘的分数:

,其精度居然达到了

,而发现这个数的人正是中国南北朝时期数学家祖冲之

年左右。他给出了两个分数:密率

和约率

。顾名思义就是密率精度高,约率的精度稍低一些。祖冲之(429-500) (图片来源: Wikipedia)

密率

是一个很好的分数近似值,因为至少要取到

才能够比密率的精度更高一点,但这样的分数就显得不太实用了。完美主义者可能会纠结于没有找到精确的π,但要知道,发现π是一个永远都不会停止的过程,这也是其魅力之所在。没有最精确,只有更精确。

寻找π的过程就是这样神奇,一开始它的模型看起来很“粗糙”,随着边数的增多,边长的细化,计算结果越发逼近理想值,其实这就是“微积分”思想的雏形。而且有意思的是,微积分的出现最后又导致了很多更好的计算π的公式的出现。直观の数学​zhuanlan.zhihu.com

参考


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部