用递推公式计算定积分(matlab版)

用递推公式计算定积分(matlab版)

ID:46913768

大小:182.50 KB

页数:7页

时间:2019-11-29

用递推公式计算定积分(matlab版)_第1页
用递推公式计算定积分(matlab版)_第2页
用递推公式计算定积分(matlab版)_第3页
用递推公式计算定积分(matlab版)_第4页
用递推公式计算定积分(matlab版)_第5页
资源描述:

《用递推公式计算定积分(matlab版)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、用递推公式计算定积分实验目的:1.充分理解不稳定的计算方法会造成误差的积累,在计算过程中会导致误差的迅速增加,从而使结果产生较大的误差。2.在选择数值计算公式来进行近似计算时,应学会选用那些在计算过程中不会导致误差迅速增长的计算公式。3.理解不稳定的计算公式造成误差积累的来源及具体过程;4.掌握简单的matlab语言进行数值计算的方法。实验题目:对n=0,1,2,…,20,计算定积分:实验原理:由于y(n)==–在计算时有两种迭代方法,如下:方法一:y(n)=–5*y(n-1),n=1,2,3,…,20;取y(0

2、)==ln6-ln5≈0.182322方法二:利用递推公式:y(n-1)=-*y(n),n=20,19,…,1.而且,由=*≤≤*=可取:y(20)≈*()≈0.008730.实验内容:对算法一,程序代码如下:function[y,n]=funa()symsknt;t=0.182322;n=0;y=zeros(1,20);y(1)=t;fork=2:20y(k)=1/k-5*y(k-1);n=n+1;endy(1:6)y(7:11)对算法二,程序代码如下:%计算定积分;%n--表示迭代次数;%y用来存储结果;fu

3、nction[y,n]=f();symsky_20;y=zeros(21,1);n=1;y_20=(1/105+1/126)/2;y(21)=y_20;fork=21:-1:2y(k-1)=1/(5*(k-1))-y(k)/5;n=n+1;end实验结果:由于计算过程中,前11个数字太小,后9个数字比较大,造成前面几个数字只显示0.0000的现象,所以先输出前6个,再输出7—11个,这样就能全部显示出来了。算法一结果:[y,n]=funa%先显示一y(1)—y(6)ans=0.1823-0.41162.3914-

4、11.706958.7346-293.5063%再显示y(7)—y(11)ans=1.0e+005*0.0147-0.07340.3669-1.83469.1728y=1.0e+012*Columns1through110.0000-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000Columns12through20-0.00000.0000-0.00010.0006-0.00290.0143-0.07170.3583-1.7916n

5、=19算法二结果:>>[y,b]=fy=0.18230.08840.05800.04310.03430.02850.02430.02120.01880.01690.01540.01410.01300.01200.01120.01050.00990.00930.00890.00830.0087b=21实验分析:从两题的计算结果可以看出来,算法一是不稳定的,而算法二是稳定的。对算法一:由于y(1)本身具有一定的误差,设为a_1,则由于y(n)=1/n-5y(n-1)=1/n-5(1/(n-1)-5y(n-1))=……

6、=1/n-5/(n-1)-5^2/(n-2)-…-(5^n)*y(0)所以经过多次迭代后会使误差增大很多倍。由此可知:在实际应用过程中应尽量避免使用数值不稳定的公式。

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

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

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