《《数学实验》ppt课件》由会员分享,可在线阅读,更多相关《《数学实验》ppt课件(18页珍藏版)》请在金锄头文库上搜索。
1、Pi的计算,1.Pi计算(古典方法与级数逼近) 2.数值积分梯形方法 3.数值积分抛物线方法 4.数值微分,1、Pi的计算古典方法,(17世纪以前) 通过圆内接正多边形和圆外切正多边形来夹逼. 早在1500年前的南朝宋齐时期,我国古代数学家祖冲之就用 古典方法给出了应介于3.1415926和3.1415927之间的结果. 由于古典方法计算十分繁琐,费时费劲,改进速度慢,因 此有不少致力于计算的人,获得的小数点后十几位最多几十 位的精度(最好记录39位,1630 德国格林伯格)。,2、Pi的计算级数逼近,从17世纪中叶开始,微积分方法开始诞生,人们逐步掌握了 解决一些实际问题的分析方法和有用工具
2、。,clear; k=0;r=1;p=0;K=-1; while r=1.0e-5 k=k+1; K=K*(-1); p1=p+K/(2*k-1); r=abs(4*(p1-p); fprintf(k=%.0f,p=%.6fn,k,4*p); p=p1; end,MATLAB程序,改进算法:,clear; k=0;r=1;p=0;K=-1; m=1;n=1; while r=1.0e-5 k=k+1; K=K*(-1); m=4*m;n=9*n; p1=p+K/(2*k-1)*(2/m+3/n); r=abs(4*(p1-p); fprintf(k=%.0f,p=%.8fn,k,4*p); p
3、=p1; end,MATLAB程序,改进算法:,麦琴(Machin)公式:,clear; k=0;r=1;p=0;K=-1; m=1;n=1; while r=1.0e-5 k=k+1; K=K*(-1); m=25*m;n=239*239*n; p1=p+K/(2*k-1)*(20/m-239/n); r=abs(4*(p1-p); fprintf(k=%.0f,p=%.8fn,k,4*p); p=p1; end,MATLAB程序,3、Pi的定积分计算,,,定积分的近似计算,在高等数学中有一类积不出的积分,如,(概率积分) (椭圆积分),输入: x=0:0.1:1; y=inline(exp
4、(-x.2); y= exp(-x.2); quad(y,0,1) trapz(x,y) 输出: ans = 0.746211 ans = 0.746826,MATLAB命令 梯形方法 trapz(x,y) 抛物线方法quad(f,a,b),如求积分的近似值,梯形方法,分析:,条件:,当区间划分为n等分时,trapz(x,y),复化梯形方法,当区间等距划分为n个子区间时,现对每个子区间再二等分,得到2n个子区间,举例,求Pi的近似值.,取,运用复化梯形算法,输入初值:,输出结果:STOP,No,Yes,clear;a=0;b=1; f=inline(4/(1+x*x); t1=(b-a)/2*
5、(f(a)+f(b); er=1;n=1; while er1.0e-6 h=(b-a)/n; s=0; for i=1:n s=s+f(a+i*h-h/2); end t2=(t1+h*s)/2; er=abs(t2-t1); fprintf(t=%.6f,r=%.6fn,t2,er); n=2*n; t1=t2; end,抛物线方法,分析:,条件:,梯形法是对每个子区间用梯形面积近似曲线下面积累加而成;而抛物线法是对每个子区间考虑其中点,用三点决定的抛物线下面积来近似.,当区间划分为n(n1)等分时,辛浦生(Simpson)方法,clear; a=0;b=1; f=inline(4/(1+x*x); t1=(b-a)/2*(f(a)+f(b); er=1;s1=0; n=1;,while er1.0e-6 h=(b-a)/n; s=0; for i=1:n s=s+f(a+i*h-h/2); end t2=(t1+h*s)/2; s=t2+(t2-t1)/3; er=abs(s-s1); fprintf(s=%.6f,r=%.6fn,s,er); s=s1; n=2*n; t1=t2; end,