电子科大数值分析实验_第1页
电子科大数值分析实验_第2页
电子科大数值分析实验_第3页
电子科大数值分析实验_第4页
电子科大数值分析实验_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第第页电子科大数值分析实验数值分析试验作业

试验报告

一、试验内容:

〔1〕对高阶多多项式

20

p(*)(*1)(*2)(*20)

(*k)

k1

编程求下面方程的解

p(*)*

19

0

并绘图演示方程的解与扰动量的关系。

〔2〕对n2~20,生成对应的Hilbert矩阵,计算矩阵的条件数;通过先确定解获得常向量b的方法,确定方程组

Hn*b

最末,用矩阵分解方法求解方程组,并分析计算结果。〔3〕对函数

f(*)

1125*

2

*[1,1]

的Chebyshev点

*kcos(

(2k1)2(n1)

)

k1,2,...,n1

编程进行Lagrange插值,并分析插值结果。

二、试验过程:

试验一:a.试验方案:

先创建一个20*50的零矩阵*,然后利用Matlab中的roots〔〕和poly〔〕函数将50个不同的ess扰动值所产生的50个解向量分别存入*矩阵中。然后再将ess向量分别和*的20个行向量绘图。即可直观的看出充分小的扰动值会产生特别大的偏差。即证明白这个问题的病态性。

b.试验程序:*=zeros(20,50);ve=zeros(1,21);

ess=linspace(0,0.00001,50);k=1;

数值分析试验作业

whilek=50ve(2)=ess(k);

*(1:20,k)=roots(poly(1:20)+ve);k=k+1;endm=1;whilem=20

figure(m),plot(ess,*(m,:));m=m+1;endc.试验结果:

数值分析试验作业

数值分析试验作业

d.试验结果分析:

由上面的试验结果可以看出一个充分小的扰动值可以让方程的解产生特别大的偏差,而且这个偏差随着ess的变大偏差也随即变大。但可以看出在相对小的根处根比较稳定,也就是说这些根关于ess并不敏感,而在较大根处时,根很不稳定,即这些解关于ess的改变是敏感的。这就说明白这个问题本身就是一个病态问题,与算法好坏无关。

假设扰动在*^18处,只要把程序中的ve〔2〕改为ve〔3〕即可,其图形和此类似。

由上可得出结论高次多项式扰动求方程解问题是一个病态问题。试验二:a.试验方案:

数值分析试验作业

先创建一个20*20的零矩阵A,再通过给定解*和Hilbert矩阵求出列向量b,然后通过LU分解法求出方程H*=b的解*,然后将*-*’这一行向量存入A矩阵中,形成一循环,最末,假如Hilbert矩阵非病态的话,那么可输出一个20*20的对角矩阵。

b.编写程序:n=2;

A=zeros(20,20);whilen=20*=1:n;H=hilb(n);b=H**';[LU]=lu(H);y=L\b;*=U\y;A(n,1:n)=*-*';n=n+1;endc.试验结果:A=

1.0e+003*

Columns1through10

00000-0.00000.0000000-0.00000.0000000-0.00000.00000000.0000-0.00000000.0000-0.00000000.0000-0.00000.00000000

00

-0.00000

-0.00000

0.00000

0.00000

0.00000

0000.0000-0.0000-0.0000-0.000000000.00000.00000.000000000-0.0000-0.0000

数值分析试验作业

-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.000000

-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000-0.00000

-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000

-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000

-0.00000.0000-0.00000.0000-0.00000.00010.0006-0.00070.0005

0.0000-0.00000.0000-0.00010.00050.0096-0.02230.0348-0.0361

0.0000-0.00000.0000-0.00040.00300.00800.0593-0.25700.5154

0.0000-0.00000.0000-0.00010.00050.0095-0.01710.00860.0347

0.0000-0.00000.0000-0.00000.00030.0059-0.01330.01450.0094

0.0000-0.00000.0000-0.00010.00090.0118-0.01820.00820.0185

0.00000.0000-0.00000.0002-0.0027-0.07620.1806-0.22490.0813

0.00000.0000-0.00000.0001-0.0017-0.04970.1224-0.16990.1064

0.0000-0.00000.0000-0.00030.00280.0371-0.0464-0.01640.1243

Columns11through20

000000000

000000000

000000000

00000-0.0003-0.0027-0.0098-0.0029-0.0016-0.00420.01870.0120-0.01370000

数值分析试验作业

0000

0000000000

0000000000

0000000000

000000000

000000000

000000000

-0.000000000000

-0.00020.00000000000

0.0238-0.00910.0015000000

-0.60910.4336-0.17270.029600000

-0.09440.1170-0.08240.0318-0.00530000

-0.06240.1107-0.11100.0674-0.02320000

-0.02890.00590.01030.0082-0.0263-0.0042000

0.05240.1690-0.3743-0.18621.09440.6004-0.115600

-0.03270.1652-0.3051-0.04850.7195-0.9387-0.16990.01910

-0.1120-0.04210.08830.0222-0.06280.10130.3783-0.21730.0469

d.试验结果分析:

000000000.00350.0181-1.21710.5714-0.2902

数值分析试验作业

当Hilbert矩阵的阶数比较小时,其解*和给定解*偏差不大;但当Hilbert矩阵的阶数变大时,偏差就会变大。这就说明白Hilbert矩阵是一组病态矩阵,从Matlab运行中的Warning可以看出,其条件数相当大。

e.试验结论:

Hilbert矩阵是一组病态矩阵,用它来做线性方程的系数矩阵时,往往会得出与精确解相差较大的解。

试验三:a.试验方案:

在区间[-1,1]上取点,先按Chebyshev取点,即*k=cos〔〔2k-1〕pi/2/〔n+1〕〕取点,然后再进行拉格朗日插值,绘出图和插值点。而后再进行匀称取点再拉格朗日插值。将两种插值结果进行比较。

b.编写程序:程序1:fora=1:10b=a+1;forc=1:b

*(c)=cos((2*c-1)*pi/2/(a+1));Y(c)=1/(1+25**(c)^2);*=-1:0.05:1;endm=length(*);fori=1:mz=*(i);s=0;fork=1:bL=1;forj=1:bifj~=k

L=L*(z-*(j))/(*(k)-*(j));endends=s+L*Y(k);endy(i)=s;end

数值分析试验作业

plot(*,y,'r');holdon;figure(2)plot(*,Y,'b*')holdonend程序2:fora=2:2:10b=a+1;

*=linspace(-1,1,b);Y=1./(1+25**.^2);*=-1:0.05:1;

m=length(*);fori=1:mz=*(i);s=0;fork=1:bL=1;forj=1:bifj~=k

L=L*(z-*(j))/(*(k)-*(j));endends=s+L*Y(k);endy(i)=s;endfigure(1)plot(*,y,'r');holdon;figure(2)plot(*,Y,'b*')

数值分析试验作业

end

c.试验结果:程序1:

1

0.5

-0.5-1

-0.8-0.6-0.4-0.200.20.40.60.81

数值分析试验作业

-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

程序2:

2

1.5

1

0.5

-0.5

-1-1

-0.8-0.6-0.4-0.200.20.40.60.81

数值分析试验作业

-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

d.试验结果分析:

匀称插值时,当n比较大时,就会涌现多项式插值的Runge现象,即当插值节点的个数n增加时,Lagrange插值多项式对原来函数的近似并非越来越好。当进行非等

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论