漫谈圆周率π值的计算论文

南京师范大学泰州学院本科毕业论文

16

南京师范大学泰州学院本科毕业论文

3.2泰勒级数法

3.2.1 算法原理

利用反正切函数的泰勒级数

arctanx?x?x352k?13?x5?????1?k?1x2k?1 ?? (3-1)

将x?1代入(3-1)式得到:

?4?arctan1?1?13?15???(?1)13?15?????1?12n?1)。nn?112n?1(3-2) .

即 ??4(1?n?1越大越精确。利用Mathematica软件编程(程

序见附录3-3)计算发现花费的时间很长,所得到的结果的准确度却很差。分析其原因

是由于当x?1时得到的arctan1的展开式(3-2)收敛得太慢。

为使泰勒级数(3-1)收敛得快,应当使x的绝对值小于1,最好是远比1小,这样,随着指数的增加,x的幂快速接近于0,泰勒级数就会快速收敛。比如,取x?arctan1212得到的

就收敛的快。例如:

132n?11?1?1?1?n?1aratan?????????1???223?2?2n?1?2?1中取2n?1?63得到的arctan12的近似值

的误差就小于

1265,准确度已经非常非常高。

12 令??arctan,???4??,则

tan????42?1. tan??tan??????13?4?1?tan?tan?1?1?421?11因此??arctan,即?arctan?arctan,从而得到

3423?11 ?arctan?arctan. (3-3)

4231111arctan比arctan收敛的更快。利用泰勒级数计算出arctan与arctan的近似值再

3223?tan?1?1相加,然后再乘以4,就得到?的近似值。

还可以考虑用??arctan15来计算?。由tan??15易算出

17

南京师范大学泰州学院本科毕业论文

tan2??512,tan4??120119,?1??1?4?119tan?4?????.

?1204239??1?tan4?tan1?41194??tan4??tan?120?4?arctan1239.从而得到

??16arctan15?4arctan151239 (3-4)

1239利用arctanx的泰勒展开式求出arctan可以求出?的近似值。

,arctan的近似值,再代入公式(3-4)就

3.2.2 计算结果及误差分析

我们利用Mathematica软件,可以完成相应的程序编写(见附录3-3)。计算结果如

下表3-2和表3-3:

表3-2 利用泰勒级数法计算圆周率结果及误差(4(arctan(1/2)+arctan(1/3))

展开项数 计算结果 误差

展开项数 计算结果 误差 展开项数 计算结果 误差

1

3.333333333 0.191740680 4

3.140850562 -0.000742092 7

3.141599341 6.687×10-6

2

3.117283951 -0.024308703 5

3.141741197 0.000148544 8

3.141591184 -1.469×10-6

3

3.145576132 0.003983478 6

3.141561588 -0.000031066 9

3.141592981 3.28×10-7

表3-3利用泰勒级数法计算圆周率结果及误差(16arctan(1/5)-4arctan(1/239))

展开项数 计算结果 误差 展开项数 计算结果 误差 展开项数 计算结果 误差

1

3.171223022 0.029630368 4

3.129551594 -0.012041059 7

3.129552476 -0.012040178

2

3.128556851 -0.013035802 5

3.129552504 -0.012040149 8

3.129552476 -0.012040178

3

3.129580851 -0.012011802 6

3.129552475 -0.012040179 9

3.129552476 -0.012040178

利用Matlab软件根据表3-2和3-3中的数据进行绘图(程序见附录3-4),可得图

18

南京师范大学泰州学院本科毕业论文

3-6、3-7、3-8和3-9。观察发现利用公式

?4?arctan12?arctan13.计算圆周率的收敛速

度很快,并且当开展项数为8项时,计算精度可达7位数,精度较高。

19

联系客服:779662525#qq.com(#替换为@)