- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数值分析试验一
数值分析第一次实验报告
姓名: 学号:
实验1:
实验项目的性质和任务
通过上机实验,使学生对病态问题、线性方程组求解和函数的数值逼近方法有一个初步理解。
2.教学内容和要求
1)对高阶多多项式
编程求下面方程的解
并绘图演示方程的解与扰动量的关系。(实验2.6)
2)对,生成对应的Hilbert矩阵,计算矩阵的条件数;通过先确定解获得常向量b的方法,确定方程组
最后,用矩阵分解方法求解方程组,并分析计算结果。(第三章,实验题4)
3)对函数
的Chebyshev点
编程进行Lagrange插值,并分析插值结果。(第四章 实验1)
项目涉及核心知识点
病态方程求解、矩阵分解和方程组求解、Lagrange插值。
重点与难点
算法设计和matlab编程。
1)a.实验方案:
先创建一个20*50的零矩阵X,然后利用Matlab中的roots()和poly()函数将50个不同的ess扰动值所产生的50个解向量分别存入X矩阵中。然后再将ess向量分别和X的20个行向量绘图。即可直观的看出充分小的扰动值会产生非常大的偏差。即证明了这个问题的病态性。
b.编写程序:
X=zeros(20,50);
ve=zeros(1,21);
ess=linspace(0,0.00001,50);k=1;
while k=50
ve(2)=ess(k);
X(1:20,k)=roots(poly(1:20)+ve);
k=k+1;
end
m=1;
while m=20
figure(m),plot(ess,X(m,:));
m=m+1;
end
C.实验结果分析和拓展
由上面的实验结果可以看出一个充分小的扰动值可以让方程的解产生非常大的偏差,而且这个偏差随着ess的变大偏差也随即变大。但可以看出在相对小的根处根比较稳定,也就是说这些根关于ess并不敏感,而在较大根处时,根很不稳定,即这些解关于ess的变化是敏感的。这就说明了这个问题本身就是一个病态问题,与算法好坏无关。
若扰动在x^18处,只要把程序中的ve(2)改为ve(3)即可,其图形和此类似。
d.实验结论:
高次多项式扰动求方程解问题是一个病态问题。
2)a.实验方案:
先创建一个20*20的零矩阵A,再通过给定解x和Hilbert矩阵求出列向量b,然后通过LU分解法求出方程HX=b的解X,然后将x-X’这一行向量存入A矩阵中,形成一循环,最后,如果Hilbert矩阵非病态的话,则可输出一个20*20的对角矩阵。
b.编写程序:
n=2;
A=zeros(20,20);
while n=20
x=1:n;
H=hilb(n);
b=H*x;
[L U]=lu(H);
y=L\b;X=U\y;
A(n,1:n)=x-X;
n=n+1;
end
Warning: Matrix is close to singular or badly scaled.
Results may be inaccurate. RCOND = 4.455948e-017.
Warning: Matrix is close to singular or badly scaled.
Results may be inaccurate. RCOND = 7.948463e-017.
Warning: Matrix is close to singular or badly scaled.
Results may be inaccurate. RCOND = 1.798429e-016.
Warning: Matrix is close to singular or badly scaled.
Results may be inaccurate. RCOND = 7.626119e-018.
Warning: Matrix is close to singular or badly scaled.
Results may be inaccurate. RCOND = 6.040620e-017.
Warning: Matrix is close to singular or b
文档评论(0)