- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一 用递推公式计算定积分.doc
实验一 用递推公式计算定积分
09信息 符文飞 0921121007
1、实验目的:
由于一个算法是否稳定,十分重要。如果算法不稳定,则数值计算的结果就会严重背离数学模型的真实结果,因此,在选择数值计算公式来进行近似计算时,我们应特别注意选用那些在数值计算过程中不会导致误差迅速增长的公式。体会稳定性在选择算法中的地位.误差扩张的算法是不稳定的,是我们所不期望的;误差衰竭的算法是稳定的.是我们努力寻求的,这是贯穿本课程的目标.通过上机计算,了解舍入误差所引起的数值不稳定性。
2、实验题目:
对=0,1,2,…,20,计算定积分
3、实验原理
由于y(n)= = –
在计算时有两种迭代方法,如下:
方法一:
y(n)= – 5*y(n-1),n=1,2,3,…,20;
取y(0)= = ln6-ln5 ≈ 0.182322
方法二:
利用递推公式:y(n-1)=-*y(n),n=20,19,…,1.
而且,由 = * ≤≤ * =
可取:y(20)≈*()≈0.008730.
4、实验内容:
算法1的程序:
y0=log(6.0)-log(5.0);
y1=0;
n=1;
while n=30
y1=1/n-5*y0;
fprintf(y[%d]=%-20f,n,y1);
y0=y1;
n=n+1;
if mod(n,1)==0;
fprintf(\n)
end
end
算法2的程序:
y0=(1/105+1/126)/2;
y1=0;
n=1;
while n=30
y1=1/(5*n)-y0/5;
fprintf(y[%d]=%-20f,n,y1)
y0=y1;
n=n+1;
if mod(n,1)==0
fprintf(\n)
end
end
5、实验结果
对于算法1:
y[1]=0.088392
y[2]=0.058039
y[3]=0.043139
y[4]=0.034306
y[5]=0.028468
y[6]=0.024325
y[7]=0.021233
y[8]=0.018837
y[9]=0.016926
y[10]=0.015368
y[11]=0.014071
y[12]=0.012977
y[13]=0.012040
y[14]=0.011229
y[15]=0.010519
y[16]=0.009904
y[17]=0.009304
y[18]=0.009035
y[19]=0.007457
y[20]=0.012713
y[21]=-0.015946
y[22]=0.125183
y[23]=-0.582439
y[24]=2.953862
y[25]=-14.729311
y[26]=73.685015
y[27]=-368.388036
y[28]=1841.975892
y[29]=-9209.844979
y[30]=46049.258229
对于算法2:
y[1]=0.198254
y[2]=0.060349
y[3]=0.054597
y[4]=0.039081
y[5]=0.032184
y[6]=0.026897
y[7]=0.023192
y[8]=0.020362
y[9]=0.018150
y[10]=0.016370
y[11]=0.014908
y[12]=0.013685
y[13]=0.012648
y[14]=0.011756
文档评论(0)