電子科大數(shù)值分析實驗_第1頁
電子科大數(shù)值分析實驗_第2頁
電子科大數(shù)值分析實驗_第3頁
電子科大數(shù)值分析實驗_第4頁
電子科大數(shù)值分析實驗_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第第頁電子科大數(shù)值分析實驗數(shù)值分析試驗作業(yè)

試驗報告

一、試驗內(nèi)容:

〔1〕對高階多多項式

20

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

(*k)

k1

編程求下面方程的解

p(*)*

19

0

并繪圖演示方程的解與擾動量的關(guān)系。

〔2〕對n2~20,生成對應(yīng)的Hilbert矩陣,計算矩陣的條件數(shù);通過先確定解獲得常向量b的方法,確定方程組

Hn*b

最末,用矩陣分解方法求解方程組,并分析計算結(jié)果。〔3〕對函數(shù)

f(*)

1125*

2

*[1,1]

的Chebyshev點

*kcos(

(2k1)2(n1)

)

k1,2,...,n1

編程進行Lagrange插值,并分析插值結(jié)果。

二、試驗過程:

試驗一:a.試驗方案:

先創(chuàng)建一個20*50的零矩陣*,然后利用Matlab中的roots〔〕和poly〔〕函數(shù)將50個不同的ess擾動值所產(chǎn)生的50個解向量分別存入*矩陣中。然后再將ess向量分別和*的20個行向量繪圖。即可直觀的看出充分小的擾動值會產(chǎn)生特別大的偏差。即證明白這個問題的病態(tài)性。

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

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

數(shù)值分析試驗作業(yè)

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.試驗結(jié)果:

數(shù)值分析試驗作業(yè)

數(shù)值分析試驗作業(yè)

d.試驗結(jié)果分析:

由上面的試驗結(jié)果可以看出一個充分小的擾動值可以讓方程的解產(chǎn)生特別大的偏差,而且這個偏差隨著ess的變大偏差也隨即變大。但可以看出在相對小的根處根比較穩(wěn)定,也就是說這些根關(guān)于ess并不敏感,而在較大根處時,根很不穩(wěn)定,即這些解關(guān)于ess的改變是敏感的。這就說明白這個問題本身就是一個病態(tài)問題,與算法好壞無關(guān)。

假設(shè)擾動在*^18處,只要把程序中的ve〔2〕改為ve〔3〕即可,其圖形和此類似。

由上可得出結(jié)論高次多項式擾動求方程解問題是一個病態(tài)問題。試驗二:a.試驗方案:

數(shù)值分析試驗作業(yè)

先創(chuàng)建一個20*20的零矩陣A,再通過給定解*和Hilbert矩陣求出列向量b,然后通過LU分解法求出方程H*=b的解*,然后將*-*’這一行向量存入A矩陣中,形成一循環(huán),最末,假如Hilbert矩陣非病態(tài)的話,那么可輸出一個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.試驗結(jié)果: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

數(shù)值分析試驗作業(yè)

-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

數(shù)值分析試驗作業(yè)

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.試驗結(jié)果分析:

000000000.00350.0181-1.21710.5714-0.2902

數(shù)值分析試驗作業(yè)

當Hilbert矩陣的階數(shù)比較小時,其解*和給定解*偏差不大;但當Hilbert矩陣的階數(shù)變大時,偏差就會變大。這就說明白Hilbert矩陣是一組病態(tài)矩陣,從Matlab運行中的Warning可以看出,其條件數(shù)相當大。

e.試驗結(jié)論:

Hilbert矩陣是一組病態(tài)矩陣,用它來做線性方程的系數(shù)矩陣時,往往會得出與精確解相差較大的解。

試驗三:a.試驗方案:

在區(qū)間[-1,1]上取點,先按Chebyshev取點,即*k=cos〔〔2k-1〕pi/2/〔n+1〕〕取點,然后再進行拉格朗日插值,繪出圖和插值點。而后再進行勻稱取點再拉格朗日插值。將兩種插值結(jié)果進行比較。

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

數(shù)值分析試驗作業(yè)

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*')

數(shù)值分析試驗作業(yè)

end

c.試驗結(jié)果:程序1:

1

0.5

-0.5-1

-0.8-0.6-0.4-0.200.20.40.60.81

數(shù)值分析試驗作業(yè)

-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

數(shù)值分析試驗作業(yè)

-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

d.試驗結(jié)果分析:

勻稱插值時,當n比較大時,就會涌現(xiàn)多項式插值的Runge現(xiàn)象,即當插值節(jié)點的個數(shù)n增加時,Lagrange插值多項式對原來函數(shù)的近似并非越來越好。當進行非等

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論