实验二怎样计算Pi
- 格式:doc
- 大小:334.00 KB
- 文档页数:13
.
Word 资料
数
学
实
验
实
验
报
告
.
Word 资料 学院:数学与统计学院
班级:数学与应用数学3班
学号:201370010314
姓名:康萍
时间:2016.04.05
实验二 怎样计算
一、实验目的
分别用下列三种方法计算的近似值,并比较三种方法的精确度:
数值积分法:通过使用Mathematica7.0编写梯形公式和辛普森公式的程序语言计算。
泰勒级数法:利用反正切函数泰勒级数计算。
蒙特卡罗(Monte Carlo)法:通过使用Mathematica7.0编写蒙特卡罗公式的程序语言来计算。
二、实验环境
基于Windows环境下的Mathematica7.0软件。
三、实验的基本理论和方法
1、数值积分法
以单位圆的圆心为原点建立直角坐标系,则单位圆在第一象限内的部分G是一个扇形,由曲线])1,0[(12xxy及两条坐标轴围成,它的面积4S。算出了S的近似值,它的4倍就是的近似值。而扇形面积S实际上就是定积分
41102dxx。
与有关的定积分有很多,比如211x的定积分411102dxx就比21x的
.
Word 资料 定积分更容易计算,更适合于用来计算。
一般地,要计算定积分dxxfba,也就是计算曲线xfy与直线bxaxy,,0所围成的曲边梯形G的面积S。为此,用一组平行于y轴的直线bxxxxxanixxnni1210,11将曲边梯形T分成n个小曲边梯形,总面积S分成这些小曲边梯形的面积之和。如果取n很大,使每个小曲边梯形的宽度都很小,可以将它上方的边界iixxxxf1近似的看作直线段,将每个小曲边梯形近似的看作梯形来求面积,就得到梯形公式。如果更准确些,将每个小曲边梯形的上边界近似的看作抛物线段,就得到辛普森公式。具体公式如下:
梯形公式 设分点11,,nxx将积分区间],[ba分成n等份,即ninabiaxi0,/。所有的曲边梯形的宽度都是nabh/。记iixfy
则第i个曲边梯形的面积iS近似的等于梯形面积hyyii121。将所有这些梯形面积加起来就得到
20121nnyyyyynbaS
这就是梯形公式。
辛普森公式 仍用分点11ninabiaxi将区间ba,分成n等份,直线11nixxi将曲边梯形分成n个小曲边梯形。再做每个小区间iixx,1的中点nabiaxi2121。将第i个小曲边梯形的上边界iixxxxfy1近似的看作经过三点iiixxxxxfx,,,211的抛物线段,则可求得
iiiiyyynabS21146
.
Word 资料 其中2121iixfy,于是得到
2123211210426nnnyyyyyyyynabS
这就是辛普森公式。
2、泰勒级数法
利用反正切函数的泰勒级数
12153arctan12153kxxxxxkk
当x的绝对值小于1,最好是远小于1,这样,随着指数的增加,x的幂快速接近于0,泰勒级数就会很快收敛,比如,取21x得到的21arctan就收敛的快,在
121321121121312121arctannnn
中取6312n得到的21arctan的近似值的误差就小于6521,准确度度已经非常高了。我们并不知道21arctan是的多少倍,但是却能计算出21arctan与4相差多少。记4,21arctan,则
312111211tan4tan1tan4tan4tantan
因此31arctan,即31arctan21arctan4,从而得到
31arctan21arctan4 (1)
31arctan比41arctan收敛得更快。利用泰勒级数计算出21arctan与31arctan的近似值再相加,然后再乘以4,就得到的近似值。
还可以考虑用51arctan来计算,它收敛的更快。由51易算出
1191204tan,1252tan
.
Word 资料 2391119120111191204tan4tan14tan4tan44tan
2391arctan44
从而得到
2391arctan51arctan42391arctan44
即 2391arctan451arctan16 (2)
称为Maqin公式,利用xarctan的泰勒展开式求出2391tan,51arctanrac的近似值,再代入Maqin公式就可以求出的近似值。
由于是通过计算2391,51,31,21arctanxx等算出来的,只要计算这些xarctan的近似值到足够的精确度,就能保证所得到的的近似值到足够的精确度,我们是通过计算
12131213nxxxxTnnn
来得到xarctan的近似值的。当10x时,这个近似值的误差为
12arctan12nxxTxenn
3、蒙特卡罗(Monte Carlo)法
在数值积分中,我们利用求单位圆面积的41来得到4,从而得到,单位圆的41是一个扇形G,它是边长为1的单位正方形1G的一部分,单位正方形1G的面积11S。只要能够求出扇形G的面积在正方形1G的面积1S中所占的比例1SSk,就能立即得到S,从而得到的值。
为了求出扇形面积在正方形面积中所占的比例k,一个办法是在正方形中随
.
Word 资料 机的投入很多点,使所投的每个点落在正方形每一个位置的机会均等,看其中有多少个点落在扇形内。将落在扇形内的点的个数m与所投点的总数n的比nm可以看作k的近似值。
而任何一种计算机语言都有这样的语言可以实现这样的随机点,能够产生在区间1,0内均匀分布的随机数。在Mathematica中,产生区间1,0内均匀分布的随机数的语句是 Random[]
产生两个这样的随机数x,y,则以(x,y)为坐标的点就是单位正方形内的一点P,它落在正方形内每个点的机会均等。P落在扇形内的充分必要条件是
122yx。
这样利用随机数来解决问题的数学方法称为蒙特卡罗法。
四、实验内容与步骤及得到的结果分析
实验1 数值积分计算
1、实验内容
分别取n=5000,n=6000,n=1000,用梯形公式和辛普森公式计算dxx10214的近似值,取20位有效数字,将所得的结果与进行比较。
2、实验步骤
在Mathematica中输入语句如下:
.
Word 资料
3、实验结果
4、结果分析
三次实验结果所得的第一个数字是利用梯形公式计算出的,结果保留了20位有效数字,实验结果所得的第二个数字是利用辛普森公式计算出的,结果保留了30位有效数字,第三个结果是的前30位有效数字组成的近似值。而且随着n取值的增大,的精确度也随之不断增高。
实验2 泰勒级数法计算
1、实验内容
利用反正切函数的泰勒级数:
12153arctan12153kxxxxxkk
.
Word 资料 计算,分别将2391,51,31,21xxxx代入上面的级数,并分别对n取值为n=5000,n=20000,n=40000计算的值,观察所得的结果和所花的时间。
2、实验步骤
在Mathematica中输入语句如下
3、实验结果
.
Word 资料
4、结果分析
在第一个实验结果中,0.469指的是所用的时间是0.469s,后面的数值指的是取20位近似值所得出的的近似值。后面的三个数值,第一个数值是将21x和31x代入所得的结果,结果保留了150位有效数字;第二个数值是将
.
Word 资料 239151xx和代入所得的结果,结果保留了150位有效数字;第三个数值是的前150位有效数字组成的近似值。
第二个实验比第一个实验所用时间少,为0.047s,第三个实验比前两个实验所用时间多,为1.672s。可见,随着n取值的增多,所用时间会随着增多,同时的精确度也会随之增高。
而且,通过对比数值积分法与泰勒级数法的计算结果,我们发现,当n的取值相同时,相对于泰勒级数法而言,数值积分法的精确度较高。
实验3 蒙特卡罗法计算
1、实验内容
取10000n,n=5000,n=20000利用随机投点的方法来计算的值。
2、实验步骤
在Mathematica中输入语句如下:
.
Word 资料
3、实验结果
3、结果分析
每次投10000个点得出的一个近似值存放在数组P中,一共做10次得到10个近似值,最后通过print[p]语句将其全部输出得到:3.1264,3.156,3.1376,
3.1616,3.1312,3.134,3.1624,3.1616,3.144,3.1448.最后求出这10个近似值的平均值,相当于随机投点10000次得到的近似值,即3.14596。
第二个积第三个实验结果原理与第一个相同,通过对比,我们发现,随着n取值的增大,的精确度也越来越高。
四 三种计算方法的比较
通过上面的实验,我们发现:当n=10000时精度很低,取更大的n,精确度会更高一些。但总的来说,蒙特卡罗法的精确度比数值积分和泰勒级数法低,基于此,我们依然用蒙特卡罗法是因为:假如不是求一个扇形的面积,而是求100个已知圆)1001(:222irbyaxGiiii的公共部分G的面积时,