数值分析 课程设计1文档格式.docx
- 文档编号:20540956
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:10
- 大小:44.38KB
数值分析 课程设计1文档格式.docx
《数值分析 课程设计1文档格式.docx》由会员分享,可在线阅读,更多相关《数值分析 课程设计1文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
-6
-5
-4
-3
-2
-1
1.0000
0.0000
1
-6.0000
-5.0000
-4.0000
-3.0000
-2.0000
2
18.0000
12.5000
8.0000
4.5000
2.0000
0.5000
3
-36.0000
-20.8333
-10.6667
-4.5000
-1.3333
0.1667
4
54.0000
26.0417
10.6667
3.3750
0.6667
0.0417
5
-64.8000
-26.0417
-8.5333
-2.0250
-0.2667
0.0083
6
64.8000
21.7014
5.6889
1.0125
0.0889
0.0014
7
-55.5429
-15.5010
-3.2508
-0.4339
-0.0254
0.0002
8
41.6571
9.6881
1.6254
0.1627
0.0063
9
-27.7714
-5.3823
-0.7224
-0.0542
-0.0014
10
16.6629
2.6911
0.2890
0.0163
0.0003
11
-9.0888
-1.2232
-0.1051
-0.0044
-0.0001
12
4.5444
0.5097
0.0350
0.0011
13
-2.0974
-0.1960
-0.0108
-0.0003
14
0.8989
0.0700
0.0031
0.0001
15
-0.3596
-0.0233
-0.0008
-0.0000
16
0.1348
0.0073
17
-0.0476
-0.0021
18
0.0159
0.0006
19
-0.0050
-0.0002
返回值
0.0183
0.0498
0.1353
0.3679
3.0000
4.0000
5.0000
6.0000
1.3333
20.8333
36.0000
0.2667
2.0250
8.5333
0.0254
0.4339
3.2508
15.5010
55.5429
0.0542
0.7224
5.3823
27.7714
0.0044
0.1051
1.2232
9.0888
0.0108
0.1960
2.0974
0.0008
0.0233
0.3596
0.0021
0.0476
0.0050
2.7183
7.3891
20.0855
54.5981
原因分析:
模型一中造成返回‘-1’的原因是:
总误差EXP由截断误差(R)和舍入误差(∈)两部分组成,已知x为精确数,则在计算ex.展开式的各项数值后,由于保留小数点后四位小数而引起舍入误差,他们累加起来和截断误差的大小最终会影响最终结果的准确度。
由表中可知,例如当x=6时,ex=
其截断误差为Rn=exo.xn+1/(n+1)!
(0<
θ<
1),有以下估计公式Rn<
6(n+1)/(n+1)!
取n=20,则R20(x)=620/20!
=1.5027972×
10^(-3),截断误差偏大以致超出了预定精度。
当x=6时,exp(6)=403.4287935eps=Σ
—exp(6)
M
25
61
115
Eps
-402.4288
-396.4288
-378.4288
-342.4288
-288.4288
179.8000
244.6000
300.1429
341.8000
369.5714
-223.6288
-158.8288
-103.2859
-61.6288
-33.8574
386.2343
395.3231
399.8675
401.9650
402.8639
-17.1945
-8.1057
-3.5613
-1.4638
-0.5649
403.2234
403.3582
403.4058
403.4217
403.4267
-0.2054
-0.0706
-0.0230
-0.0071
而当x=-6时,ex=
,从表中可以看出,
以正负相隔的形式出现,i!
不断增大,以致产生书page12的情况,当两
个相近数相减时,致使误差也很大。
ε=3.9199e-005
列出表格
当x=-6时,exp(-6)=2.4787×
10^-3,eps=Σ
—exp(-6)
-23
33.8000
0.9975
-5.0025
12.9975
-23.0025
-33.8000
31
-24.5429
17.1143
-10.6571
6.0057
30.9975
-24.5453
17.1118
-10.6596
6.0032
-3.0831
1.4613
-0.6361
0.2628
-0.0968
-3.0856
1.4588
-0.6386
0.2603
-0.0993
0.0380
-0.0095
0.0013
0.0028
0.0356
-0.0120
0.0038
-0.0012
3.3667e-004
模型二结果与分析:
X
S
0.0025
0.0067
148.4132
403.4288
原因分析:
这次模型二的基本思路为改变算法。
其中先讨论x的正负值,当x>
0时,将ex=e×
e×
e……×
e(一共x个)先计算e^1=
的近似值,根据x的p次幂的相对误差是x的本身相对的p倍,当x=1的时候ex误差极其的小,当乘以x的时候其相对误差也是十分的小的,以致能达到精准度。
当x<
0时,根据page17例1.9得到e(-x)的部分级数和,然后求倒数。
以致舍入误差限减少。
四、关于本设计的体会
做了这次程序设计,我才发现自己的知识层面是如何的浅薄。
在建立模型一的时候对于我而言是比较简单的,但是到了如何建立模型二的时候就让我很难继续前进。
刚开始的时候分析误差偏大的原因主要是以为只是截断误差太大了,想把maxN直接变大,但这是不符合题目要求的,于是我进一步想把绝对误差改为相对误差,这时候当x>
0时,返回值便可以输出近似值。
但是由于当x<
0零时,两个近似数相减的话,其相对误差更大,一直不能成功。
后来我查阅书本看到了page17的例1.9,这让我想出先讨论x是否大于零,然后在进行运算。
总的来说,这次实验中主要的困难在于:
1)难以正确分析返回值为‘-1’的原因,而这偏偏是最重要的,后来通过查阅书本以及询问同学才慢慢的把它弄懂;
2)在弄懂了原因之后,建立模型二是最大的问题了,我尝试把之前所想的尽量柔和在一起,但是程序一直存在错误,弄得自己都快要放弃了,后来还是一位热心的同学帮我改进了程序的一些错误,才让我真正的完成设计。
通过这次实验是我更了解了误差的计算以及影响,以及让我意识自己在编写程序一些致命却完全可以更改的错误,今后我会更加努力的学习matlab。
五、参考文献
[1]史万明,数值分析[M],北京,理工大学出版社,2010-4
[2]李庆扬,数值分析(第四版)[M],北京,清华大学出版社,2008-12
六、附录
模型一:
functionExp_Calculate(x)%定义一个函数
N=20;
sum=1;
i=1;
fori=1:
N
z(i)=factorial(i);
%计算出i!
y(i)=x^i/z(i);
%计算
sum=sum+y(i);
%求和,得到泰勒展开式级数和
end
if(abs(sum-exp(x))<
=10^-5)%限定误差为10^-5
sum,y(i),%输出结果
else
sum=-1,%不符合条件输出sum=-1
模型二:
functionExp_text2(x)%定义函数
ifx>
0%讨论x是否大于零
fori=1:
(N-1)
sum=sum+1/z(i);
%先计算e^1
if(abs(sum^x-exp(x))<
10^-5)%计算e^x
sum=sum^x;
break;
end
else%x小于零的情况讨论
y(i)=(-x)^i/z(i);
%先计算e^(-x)部分和级数
if(abs(1/sum-exp(x))<
10^-5)
sum=1/sum;
%最后求其倒数
if(abs(1/sum-exp(x))>
=10^-5)
sum=--1;
sum,
七、教师评价
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数值分析 课程设计1 数值 分析 课程设计