数学实验(计算圆周率)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数学实验报告
一、 实验问题
人们很早就发现圆的周长和直径的比是个常数,也就是我们都熟悉的圆周率π,那么这个常数的值究竟是多少哪?我国的伟大数学家祖冲之将π精确到3.1415926-3.1415927之间,西方的数学研究者也从来没有停止过对π的计算,那么在今天计算机技术如此发达的情况下,我们如何将π的近似值精确到更多位数哪?
二、问题的分析
π的精确度问题困扰大家已久,所以我们不妨在MATLAB 中采用循环来实现对π的更高位数的精确。
不妨以精确到小数点后9位为例。
我们知道 3
1arctan 21arctan 1arctan 4+==π 因此可以利用)(π)(3
21-1-2n 1-2n 1n 1-n 111-2n 431arctan 21arctan 4+=⎪⎭⎫ ⎝⎛+=∑∞=
三、实验内容
在MATLAB 中键入以下程序
clear;
n=0;
r=1;
p=0;
k=-1;
a=1;
b=1;
while r>=1.0e-9
n=n+1;
k=k*(-1);
a=4*a;b=9*b;
pl=p+k/(2*n-1)*(2/a+3/b);
r=abs(4*(pl-p));
fprintf('n=%.0f,p=%.10f\n',n,4*pl);
p=pl;
end
四、问题求解结果和结论
n=1,p=3.3333333333
n=2,p=3.1172839506
n=3,p=3.1455761317
n=4,p=3.1408505618
n=5,p=3.1417411974
n=6,p=3.1415615879
n=7,p=3.1415993410
n=8,p=3.1415911844
n=9,p=3.1415929813
n=10,p=3.1415925796
n=11,p=3.1415926705
n=12,p=3.1415926497
n=13,p=3.1415926545
n=14,p=3.1415926534
n=15,p=3.1415926536
对泰勒级数,当|x |越小时级数收敛速度越快,这启示我们另外构造相关级数来逼近π。
事实上,容易证明:
4π=4artan 51-arctan 239
1 4π=2artan 31+arctan 71
五、问题的进一步拓展和实验
用复化梯形法计算π的值
在MATLAB 中键入以下程序:
clear;
f=inline('4./(1+x.*x)');
a=0;b=1;n=1;
h=(b-a)/n;
t1=h/2*(f(a)+f(b));
er=1;k=1;
while er>1.0e-5;
s=0;
for i=1:n
s=s+f(a+(i-1/2)*h);
end
t2=(t1+h*s)/2;
er=abs(t2-t1);
fprintf('n=%.0f,p=%.6f,r=%.6f\n',k,t2,er);
n=2*n;h=h/2;t1=t2;
k=k+1;
end
六、实验的总结和体会
通过用MATLAB对π的近似值的计算,加深了对MATLAB循环结构的认识,方便了以后对数学软件的进一步使用。