实验指导书3_误差

实验指导书3_误差

ID:14299513

大小:195.50 KB

页数:5页

时间:2018-07-27

实验指导书3_误差_第1页
实验指导书3_误差_第2页
实验指导书3_误差_第3页
实验指导书3_误差_第4页
实验指导书3_误差_第5页
资源描述:

《实验指导书3_误差》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、湖北民族学院理学院《数值分析》实验指导书实验指导书_误差一、误差的来源在运用计算方法解决实际问题的过程中,会出现各种各样的误差,必须注重误差分析.否则,一种合理的计算也可能得出错误的结果.例1用差商求在处导数的近似值.(1)取和,用手工计算,取五位数字计算;(2)取,,=0.000000000000001和=0.0000000000000001分别用MATLAB软件计算,取十五位数字计算;(3)比较以上的运算结果,说明是否越小则计算结果越准确.解根据导数定义,可以用差商求在处导数的近似值.从理论上讲,越小则计算结果越准确.如果用手工计算,取五位数字计算.当时,得0.32

2、80,与导数的精确值比较,这项计算还是可取的.但是当时,得,算出的结果反而毫无价值.如果应用MATLAB软件计算,取十五位数字计算,结果就完全不同了.在MATLAB工作窗口输入下面程序>>formatlongg;a=3;h=0.1;y=log(a+h)-log(a);yx=y/h运行后得yx=0.32789822822991将此程序中改为0.0001,运行后得yx=0.33332777790385后者比前者好.再取h=0.000000000000001,运行后得yx=0.44408920985006不如前者好.取h=0.0000000000000001,运行后得yx=0

3、算出的结果反而毫无价值.5湖北民族学院理学院《数值分析》实验指导书例2计算的近似值.解泰勒级数,取,得.(1.1)这是一个无限过程,计算机无法求到精确值.只能在(1.1)取有限项时计算,再估计误差.如果取有限项作为的值必然会有误差,根据泰勒余项定理可知其截断误差为.如果取(1.1)的前九项,输入程序>>n=8;s=1;S=1;fork=1:ns=s*k;S=S+1/s,ends,S,R=3/(s*(n+1))或>>S1=1+1+1/2+1/(1*2*3)+1/(1*2*3*4)+1/(1*2*3*4*5)+1/(1*2*3*4*5*6)+1/(1*2*3*4*5*6*7

4、)+1/(1*2*3*4*5*6*7*8),R1=3/(1*2*3*4*5*6*7*8*9)运行后结果S=R=2.718278769841278.267195767195768e-006因为截断误差为所以e的近似值2.71828.二、误差和有效数字例1取作为的四舍五入近似值时,求其绝对误差.解在MATLAB工作窗口输入程序>>jueduwucha=exp(1)-2.718285湖北民族学院理学院《数值分析》实验指导书运行后输出结果为jueduwucha=1.828459045505326e-006例2计算d的近似值,并确定其绝对误差和相对误差.解因为被积函数的原函数不是

5、初等函数,故用泰勒级数求之.,(1.1)这是一个无限过程,计算机无法求到精确值.可用(1.1)的前四项代替被积函数,得d)d==.根据泰勒余项定理和交错级数收敛性的判别定理,得到绝对误差=WU,在MATLAB命令窗口输入计算程序如下:symsxf=1-x^2/(1*2*3)+x^4/(1*2*3*4*5)-x^6/(1*2*3*4*5*6*7)y=int(f,x,0,pi/2),y1=double(y)y11=pi/2-(pi/2)^3/(3*3*2)+(pi/2)^5/(5*5*4*3*2)-(pi/2)^7/(7*7*6*5*4*3*2)infd=double(in

6、f),inf=int(sin(x)/x,x,0,pi/2)WU=(pi/2)^9/(9*9*8*7*6*5*4*3*2),R=infd-y11因为运行后输出结果为:1.37076216815449,=1.37074466418938,1.75039651049147e-005,WU=1.782679830970664e-005.所以,的绝对误差为,故d.的相对误差为<0.0073%.三、数值计算中应注意的问题一个数值问题的解决,往往要经过多次运算.每一步运算都可能产生误差,在反复多次计算的过程中,必然产生误差的传播和积累.显然,当误差积累偏大时,会使计算结果失真.因此,

7、在每一步计算中,都应该防止产生误差升级的现象.例1求数的近似值.解(1)直接用MATLAB命令5湖北民族学院理学院《数值分析》实验指导书>>x=(7^15)*(sqrt(1+8^(-19))-1)运行后输出结果x=0问题出现在两个相近的数与相减时,计算机运行程序>>sqrt(1+8^(-19))-1运行后输出结果ans=0由于计算机硬件只支持有限位机器数的运算,因此在计算中可能引入和传播舍入误差.因为有效数字的严重损失,导致输出的结果为0,计算机不能再与数继续进行真实的计算,所以,最后输出的结果与的精确值不符.(2)如果化为,再用MATL

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。