數(shù)值分析實(shí)驗(yàn)報(bào)告_第1頁
數(shù)值分析實(shí)驗(yàn)報(bào)告_第2頁
數(shù)值分析實(shí)驗(yàn)報(bào)告_第3頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、實(shí)驗(yàn)一 誤差分析實(shí)驗(yàn)(病態(tài)問題)實(shí)驗(yàn)?zāi)康模核惴ㄓ小皟?yōu)”與“劣”之分,問題也有“好”與“壞”之別。 對數(shù)值方法的研究而言, 所謂壞問題就是問題本身對擾動敏感者, 反之屬于好問 題。通過本實(shí)驗(yàn)可獲得一個初步體會。數(shù)值分析的大部分研究課題中,如線性代數(shù)方程組、矩陣特征值問題、非 線性方程及方程組等都存在病態(tài)的問題。 病態(tài)問題要通過研究和構(gòu)造特殊的算法 來解決, 當(dāng)然一般要付出一些代價 (如耗用更多的機(jī)器時間、 占用更多的存儲空 間等)。問題提出:考慮一個高次的代數(shù)多項(xiàng)式20p(x) (x 1)( x 2) (x 20) (x k) (1.1)k1顯然該多項(xiàng)式的全部根為 1,2, ,20 共計(jì) 20

2、個,且每個根都是單重的?,F(xiàn)考慮 該多項(xiàng)式的一個擾動19p( x) x19 0 (1.2)其中 是一個非常小的數(shù)。這相當(dāng)于是對()中 x19 的系數(shù)作一個小的擾動。我 們希望比較()和()根的差別,從而分析方程()的解對擾動的敏感性。 實(shí)驗(yàn)內(nèi)容: 為了實(shí)現(xiàn)方便,我們先介紹兩個 Matlab 函數(shù):“roots ”和“ poly ”。 u roots(a)其中若變量 a 存儲 n+1 維的向量,則該函數(shù)的輸出 u 為一個 n 維的向量。設(shè) a 的元素依次為 a1,a2, ,an 1,則輸出 u的各分量是多項(xiàng)式方程na1xna2xan x an 1 0的全部根;而函數(shù)b poly(v)的輸出 b是一

3、個 n+1維變量,它是以 n維變量 v的各分量為根的多項(xiàng)式的系數(shù)。 可見“ roots ”和“ poly ”是兩個互逆的運(yùn)算函數(shù)。ess 0.000000001;ve zeros(1,21);ve(2) ess;roots ( poly (1: 20) ve)上述簡單的 Matlab 程序便得到()的全部根,程序中的“ ess”即是()中 的。實(shí)驗(yàn)要求:(1)選擇充分小的 ess,反復(fù)進(jìn)行上述實(shí)驗(yàn),記錄結(jié)果的變化并分析它們。 如果擾動項(xiàng)的系數(shù) 很小,我們自然感覺()和()的解應(yīng)當(dāng)相差很 小。計(jì)算中你有什么出乎意料的發(fā)現(xiàn)?表明有些解關(guān)于如此的擾動敏 感性如何?(2)將方程()中的擾動項(xiàng)改成 x1

4、8 或其它形式,實(shí)驗(yàn)中又有怎樣的現(xiàn)象 出現(xiàn)?(3)(選作部分)請從理論上分析產(chǎn)生這一問題的根源。注意我們可以將 方程()寫成展開的形式,20 19p(x, ) x20 x190 (1.3)同時將方程的解 x 看成是系數(shù) 的函數(shù),考察方程的某個解關(guān)于 的擾動是 否敏感,與研究它關(guān)于 的導(dǎo)數(shù)的大小有何關(guān)系?為什么?你發(fā)現(xiàn)了什么現(xiàn)象, 哪些根關(guān)于 的變化更敏感?思考題一:(上述實(shí)驗(yàn)的改進(jìn))在上述實(shí)驗(yàn)中我們會發(fā)現(xiàn)用 roots 函數(shù)求解多項(xiàng)式方程的精度不高, 為此你可以考慮用 符號函數(shù) solve 來提高解的精確度, 這需要用到將多項(xiàng)式轉(zhuǎn)換為符號多項(xiàng)式的函數(shù) poly2sym, 函數(shù)的具體使用方法可參

5、考 Matlab 的幫助。實(shí)驗(yàn)過程:程序:a=poly(1:20);rr=roots(a);for n=2:21nfor m=1:9ess=10(-6-m);ve=zeros(1,21);ve(n)=ess;r=roots(a+ve);-6-ms=max(abs(r-rr)endend利用符號函數(shù):(思考題一)a=poly(1:20);y=poly2sym(a);rr=solve(y)for n=2:21n for m=1:8 ess=10(-6-m); ve=zeros(1,21); ve(n)=ess; a=poly(1:20)+ve; y=poly2sym(a); r=solve(y);

6、-6-m s=max(abs(r-rr) end end數(shù)值實(shí)驗(yàn)結(jié)果及分析:format long-6m n-7-8-9-10234050060000700008000090000100000110000120000130000140000150000160000170000180000190000200000210000-6-m-11-12-13-14203000400005000060000700008000090000100000110000120000130000140000150000160000170000180000190000200000210000討論:利用這種方法進(jìn)行這類實(shí)

7、驗(yàn), 可以很精確的擾動敏感性的一般規(guī)律。 即當(dāng)對擾動 項(xiàng)的系數(shù)越來越小時, 對其多項(xiàng)式擾動的結(jié)果也就越來越小, 即擾動敏感性與擾 動項(xiàng)的系數(shù)成正比, 擾動項(xiàng)的系數(shù)越大, 對其根的擾動敏感性就越明顯, 當(dāng)擾動 的系數(shù)一定時, 擾動敏感性與擾動的項(xiàng)的冪數(shù)成正比, 擾動的項(xiàng)的冪數(shù)越高, 對 其根的擾動敏感性就越明顯。實(shí)驗(yàn)總結(jié):利用 MATLAB來進(jìn)行病態(tài)問題的實(shí)驗(yàn),雖然其得出的結(jié)果是有誤差的,但是可以 很容易的得出對一個多次的代數(shù)多項(xiàng)式的其中某一項(xiàng)進(jìn)行很小的擾動, 對其多項(xiàng) 式的根會有一定的擾動的,所以對于這類病態(tài)問題可以借助于MATLAB來進(jìn)行問題的分析。學(xué)號: 06450210姓名:萬軒實(shí)驗(yàn)二

8、插值法實(shí)驗(yàn)(多項(xiàng)式插值的振蕩現(xiàn)象)問題提出 :考慮一個固定的區(qū)間上用插值逼近一個函數(shù)。 顯然拉格朗日插值中使 用的節(jié)點(diǎn)越多,插值多項(xiàng)式的次數(shù)就越高。 我們自然關(guān)心插值多項(xiàng)式的次數(shù)增 加時,L(x) 是否也更加靠近被逼近的函數(shù)。 龍格給出了一個極著名例子。 設(shè)區(qū)間 -1 ,1 上函數(shù)f(x)=1 (1+25x2)實(shí)驗(yàn)內(nèi)容:考慮區(qū)間-1 ,1的一個等距劃分,分點(diǎn)為:x(i)=-1+2i/n,i=0,1,2 ,n澤拉格朗日插值多項(xiàng)式為:L(x)=l(i)(x)/(1+25x(j)2 ) i=0,1, n其中 l(i)(x), i=0,1,n,n 是 n 次拉格朗日插值基函數(shù)。實(shí)驗(yàn)要求: 選擇不斷增大

9、的分點(diǎn)數(shù)目 n=2,3 ,畫出 f(x) 及插值多項(xiàng)式函數(shù) L(x) 在-1 ,1 上的圖象,比較分析實(shí)驗(yàn)結(jié)果。(2)選擇其它的函數(shù),例如定義在區(qū)間 -5 ,5 上的函數(shù) h(x)=x/(1+x4) , g(x)=arctanx重復(fù)上述的實(shí)驗(yàn)看其結(jié)果如何。(3)區(qū)間 a,b 上切比雪夫點(diǎn)的定義為:xk=( b+a)/2+(b-a)/2)cos(2k-1) /(2(n+1),k=1,2,n+1以 x1,x2x(n+1) 為插值節(jié)點(diǎn)構(gòu)造上述各函數(shù)的拉格朗日插值多項(xiàng) 式,比較其結(jié)果。實(shí)驗(yàn)過程:程序:多項(xiàng)式插值的震蕩現(xiàn)象(實(shí)驗(yàn))for m=1:6subplot(2,3,m)%largrang(6*m)

10、%if m=1把窗口分割成 2*3 大小的窗口 對 largrang 函數(shù)進(jìn)行運(yùn)行title('longn=6')elseif m=2title('longn=12') elseif m=3title('longn=18') elseif m=4title('longn=24') elseif m=5title('longn=30') elseif m=6title('longn=36') end % end 保存為: function largrang(longn)對每個窗口分別寫上標(biāo)題為插值點(diǎn)的

11、個數(shù)mm=input('please input mm( 運(yùn)行第幾個函數(shù)就輸入 mm為幾 ):mm=') if mm=1 %d 表示定義域的邊界值d=1;elseif mm=2|mm=3d=5;endx0=linspace(-d,d,longn); %x 的節(jié)點(diǎn)if mm=1y0=1./(1.+25.*x0.2);elseif mm=2y0=x0./(1.+x0.4);elseif mm=3y0=atan(x0);endx=sym('x');n=length(x0); s=;for k=1:np=;for j=1:nif j=kp=p*(x-x0(j)/(x0(

12、k)-x0(j);endends=p*y0(k)+s;endy=s;if mm=1ezplot('1/(1+25*x2)')elseif mm=2ezplot('x/(1+x4)')elseif mm=3ezplot('atan(x)')endhold onezplot(y,-d,d)hold off保存為:數(shù)值實(shí)驗(yàn)結(jié)果及分析:對于第一個函數(shù) f(x)=1/(1+25x 2)對于第二個函數(shù) h(x)=x/(1+x 4)對于第三個函數(shù) g(x)=arctan(x)討論:通過對三個函數(shù)得出的 largrang 插值多項(xiàng)式并在數(shù)學(xué)軟件中的運(yùn)行,得出函數(shù)

13、 圖象,說明了對函數(shù)的支點(diǎn)不是越多越好, 而是在函數(shù)的兩端而言支點(diǎn)越多, 而 largrang 插值多項(xiàng)式不是更加靠近被逼近的函數(shù),反而更加遠(yuǎn)離函數(shù),在函數(shù) 兩端的跳動性更加明顯, argrang 插值多項(xiàng)式對函數(shù)不收斂。實(shí)驗(yàn)總結(jié):利用 MATLAB來進(jìn)行函數(shù)的 largrang 插值多項(xiàng)式問題的實(shí)驗(yàn), 雖然其得出的結(jié)果 是有誤差的,但是增加支點(diǎn)的個數(shù)進(jìn)行多次實(shí)驗(yàn),可以找出函數(shù)的 largrang 插 值多項(xiàng)式的一般規(guī)律,當(dāng)支點(diǎn)增加時, largrang 插值多項(xiàng)式對函數(shù)兩端不收斂, 不是更加逼近,而是更加遠(yuǎn)離,跳動性更強(qiáng)。所以對于函數(shù)的 largrang 插值多 項(xiàng)式問題可以借助于 MATL

14、AB來進(jìn)行問題的分析,得到比較準(zhǔn)確的實(shí)驗(yàn)結(jié)規(guī)律。學(xué)號: 06450210姓名:萬軒實(shí)驗(yàn)五 解線性方程組的直接方法實(shí)驗(yàn) (主元的選取與算法的穩(wěn)定性)問題提出: Gauss消去法是我們在線性代數(shù)中已經(jīng)熟悉的。但由于計(jì)算機(jī)的數(shù)值 運(yùn)算是在一個有限的浮點(diǎn)數(shù)集合上進(jìn)行的, 如何才能確保 Gauss 消去法作為數(shù)值 算法的穩(wěn)定性呢? Gauss消去法從理論算法到數(shù)值算法,其關(guān)鍵是主元的選擇。 主元的選擇從數(shù)學(xué)理論上看起來平凡,它卻是數(shù)值分析中十分典型的問題。 實(shí)驗(yàn)內(nèi)容:考慮線性方程組Ax b, A Rn n, b Rn編制一個能自動選取主元, 又能手動選取主元的求解線性方程組的 Gauss 消去過 程。實(shí)

15、驗(yàn)要求:1)取矩陣 A618 6 1,b8 6 1715,則方程有解 x* (1,1, ,1)T 。取 n=10158 6 14計(jì)算矩陣的條件數(shù)。讓程序自動選取主元,結(jié)果如何?(2)現(xiàn)選擇程序中手動選取主元的功能。每步消去過程總選取按模最小或按模 盡可能小的元素作為主元, 觀察并記錄計(jì)算結(jié)果。 若每步消去過程總選取按模最 大的元素作為主元,結(jié)果又如何?分析實(shí)驗(yàn)的結(jié)果。(3)取矩陣階數(shù) n=20或者更大, 重復(fù)上述實(shí)驗(yàn)過程, 觀察記錄并分析不同的問 題及消去過程中選擇不同的主元時計(jì)算結(jié)果的差異, 說明主元素的選取在消去過 程中的作用。(4)選取其他你感興趣的問題或者隨機(jī)生成矩陣,計(jì)算其條件數(shù)。重

16、復(fù)上述實(shí) 驗(yàn),觀察記錄并分析實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)過程:程序:建立 M文件:function x=gauss(n,r)n=input(' 請輸入矩陣 A的階數(shù) :n=')A=diag(6*ones(1,n)+diag(ones(1,n-1),1)+diag(8*ones(1,n-1),-1) b=A*ones(n,1)p=input(' 條件數(shù)對應(yīng)的范數(shù)是 p- 范數(shù): p=') pp=cond(A,p)pausem,n=size(A); nb=n+1;Ab=A br=input(' 請輸入是否為手動,手動輸入 1,自動輸入 0: r=') for i=

17、1:n-1if r=0 pivot,p=max(abs(Ab(i:n,i);ip=p+i-1;if ip=iAb(i ip,:)=Ab(ip i,:);disp(Ab); pauseendendif r=1i=iip=input(' 輸入 i 列所選元素所處的行數(shù): ip=');Ab(i ip,:)=Ab(ip i,:);disp(Ab); pause end pivot=Ab(i,i);for k=i+1:nAb(k,i:nb)=Ab(k,i:nb)-(Ab(k,i)/pivot)*Ab(i,i:nb); enddisp(Ab); pauseend x=zeros(n,1);

18、x(n)=Ab(n,nb)/Ab(n,n);for i=n-1:-1:1 x(i)=(Ab(i,nb)-Ab(i,i+1:n)*x(i+1:n)/Ab(i,i);end數(shù)值實(shí)驗(yàn)結(jié)果及分析:取矩陣 A的階數(shù) :n=10 ,自動選取主元: >> format long>> gauss 請輸入矩陣 A的階數(shù) :n=10 n = 10條件數(shù)對應(yīng)的范數(shù)是 p- 范數(shù): p=1p = 1pp = +003請輸入是否為手動,手動輸入 1,自動輸入 0:r=0 r = 0取矩陣 A的階數(shù) :n=10,手動選取主元: 選取絕對值最大的元素為主元:>> gauss 請輸入矩陣

19、A的階數(shù) :n=10 n = 10條件數(shù)對應(yīng)的范數(shù)是 p- 范數(shù): p=2p = 2pp= +003請輸入是否為手動,手動輸入 1,自動輸入 0:r=1 r = 1ans= 1 1 1 1 1 1 1 1 1 1 選取絕對值最小的元素為主元:>> gauss 請輸入矩陣 A的階數(shù) :n=10 n = 10條件數(shù)對應(yīng)的范數(shù)是 p- 范數(shù): p=2p = 2pp = +003請輸入是否為手動,手動輸入 1,自動輸入 0:r=1 r = 1 ans =取矩陣 A的階數(shù) :n=20,手動選取主元: 選取絕對值最大的元素為主元:>> gauss 請輸入矩陣 A的階數(shù) :n=20

20、條件數(shù)對應(yīng)的范數(shù)是 p- 范數(shù): p=1 p = 1 pp = +006ans = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 選取絕對值最小的元素為主元:>> gauss 請輸入矩陣 A的階數(shù) :n=20. n = 20條件數(shù)對應(yīng)的范數(shù)是 p- 范數(shù): p=2p = 2pp = +006請輸入是否為手動,手動輸入 1,自動輸入 0:r=1 r = 1ans =將 M文件中的第三行:A=diag(6*ones(1,n)+diag(ones(1,n-1),1)+diag(8*ones(1,n-1),-1) 改為:A=hilb(n) >>

21、 gauss 請輸入矩陣 A的階數(shù) :n=7 n = 7 條件數(shù)對應(yīng)的范數(shù)是 p- 范數(shù): p=1 p = 1 pp = +008 請輸入是否為手動,手動輸入 1,自動輸入 0:r=1 r = 1 ans = >> gauss請輸入矩陣 A的階數(shù) :n=7 n = 7條件數(shù)對應(yīng)的范數(shù)是 p- 范數(shù): p=2p = 2 pp = +008 請輸入是否為手動,手動輸入 1,自動輸入 0:r=1 r = 1 ans =該問題在主元選取與算出結(jié)果有著很大的關(guān)系, 取絕對值大的元素作為主元 比取絕對值小的元素作為主元時產(chǎn)生的結(jié)果比較準(zhǔn)確, 即選取絕對值小的主元時 結(jié)果產(chǎn)生了較大的誤差,條件數(shù)

22、越大產(chǎn)生的誤差就越大。討論:在 gauss 消去法解線性方程組時,主元的選擇與算法的穩(wěn)定性有密切的聯(lián) 系,選取絕對值大的元素作為主元比絕對值小的元素作為主元時對結(jié)果產(chǎn)生的誤 差較小。條件數(shù)越大對用 gauss 消去法解線性方程組時, 對結(jié)果產(chǎn)生的誤差就越 大。實(shí)驗(yàn)總結(jié):對用 gauss 消去法解線性方程組時, 主元的選取與算法的穩(wěn)定性有密切的聯(lián) 系,選取適當(dāng)?shù)闹髟欣诘贸龇€(wěn)定的算法, 在算法的過程中, 選取絕對值較大 的主元比選取絕對值較小的主元更有利于算法的穩(wěn)定, 選取絕對值最大的元素作 為主元時,得出的結(jié)果相對較準(zhǔn)確較穩(wěn)定。 條件數(shù)越小, 對用這種方法得出的結(jié) 果更準(zhǔn)確。 在算除法的過程

23、中要盡量避免使用較小的數(shù)做為除數(shù), 以免發(fā)生結(jié)果 數(shù)量級加大,使大數(shù)吃掉小數(shù),產(chǎn)生舍入誤差。學(xué)號: 06450210姓名:萬軒實(shí)驗(yàn)(線性代數(shù)方程組的性態(tài)與條件數(shù)的估計(jì))問題提出:理論上,線性代數(shù)方程組 Ax b 的攝動滿足x cond ( A) A bx 1 A 1 A A b矩陣的條件數(shù)確實(shí)是對矩陣病態(tài)性的刻畫, 但在實(shí)際應(yīng)用中直接計(jì)算它顯然不現(xiàn) 實(shí),因?yàn)橛?jì)算 A 1 通常要比求解方程 Ax b 還困難。實(shí)驗(yàn)內(nèi)容: Matlab 中提供有函數(shù)“ condest ”可以用來估計(jì)矩陣的條件數(shù),它給 出的是按 1-范數(shù)的條件數(shù)。首先構(gòu)造非奇異矩陣 A 和右端,使得方程是可以精 確求解的。再人為地引

24、進(jìn)系數(shù)矩陣和右端的攝動A和 b,使得 A 和 b 充分小。實(shí)驗(yàn)要求:1)假設(shè)方程 Ax=b 的解為 x,求解方程 (A A)x? b b ,以 1-范數(shù),給出x x? x 的計(jì)算結(jié)果。x x 的計(jì)算結(jié)果。(2)選擇一系列維數(shù)遞增的矩陣(可以是隨機(jī)生成的) ,比較函數(shù)“ condest ” 所需機(jī)器時間的差別 . 考慮若干逆是已知的矩陣,借助函數(shù)“ eig ”很容易給出 cond2(A) 的數(shù)值。將它與函數(shù)“ cond(A,2) ”所得到的結(jié)果進(jìn)行比較。3)利用“condest ”給出矩陣 A 條件數(shù)的估計(jì), 針對(1)中的結(jié)果給出 x 的 x理論估計(jì),并將它與( 1)給出的計(jì)算結(jié)果進(jìn)行比較,分

25、析所得結(jié)果。注意,如果給出了 cond(A)和 A 的估計(jì),馬上就可以給出 A 1 的估計(jì)4)估計(jì)著名的 Hilbert 矩陣的條件數(shù)H(hi,j)n nhi,ji,j 1,2, ,na=fix(100*rand(n)+1x=ones(n,1)%b=a*x%data=rand(n)*%datb=rand(n,1)*%A=a+data程序:n=input('please input n:n=')B=b+datb xx=geshow(A,B)% 解擾動后的解得出用高斯消去法解方程組實(shí)驗(yàn)過程:% 輸入矩陣的階數(shù) % 隨機(jī)生成一個矩陣 a 假設(shè)知道方程組的解全為 1 用矩陣 a 和以知

26、解得出矩陣 b 隨即生成擾動矩陣 data 隨即生成擾動矩陣 datbx0=norm(xx-x,1)/norm(x,1) %保存為:function x=geshow(A,B)%m,n=size(A);nb=n+1;AB=A B;for i=1:n-1pivot=AB(i,i);for k=i+1:nAB(k,i:nb)=AB(k,i:nb)-(AB(k,i)/pivot)*AB(i,i:nb); endendx=zeros(n,1); x(n)=AB(n,nb)/AB(n,n); for i=n-1:-1:1x(i)=(AB(i,nb)-AB(i,i+1:n)*x(i+1:n)/AB(i,i

27、); end 保存為: function cond2(A)% 自定義求二階條件數(shù)B=A'*A;V1,D1=eig(B);V2,D2=eig(B(-1); cond2A=sqrt(max(max(D1)*sqrt(max(max(D2) end保存為:為矩陣的階 隨機(jī)生成矩陣 A用 condest 求條件數(shù) 用自定義的求條件數(shù) 用 cond 求條件數(shù) 運(yùn)行一次暫停format long for n=10:10:100n=n %n A=fix(100*randn(n); % condestA=condest(A) % cond2(A) % condA2=cond(A,2) % pause

28、% end 保存為: n=input('please input n:n=') a=fix(100*rand(n)+1; x=ones(n,1); b=a*x; data=rand(n)*; datb=rand(n,1)*; A=a+data; B=b+datb; xx=geshow(A,B);%輸入矩陣的階數(shù)隨機(jī)生成一個矩陣 a假設(shè)知道方程組的解全為 1用矩陣 a 和以知解得出矩陣 b隨即生成擾動矩陣 data 隨即生成擾動矩陣 datbx0=norm(xx-x,1)/norm(x,1)利用第一小問的求出解陣x x? x 的理論結(jié)果得出 x xx00=cond(A)/(1-n

29、orm(inv(A)*norm(xx-x)*(norm(xx-x)/(norm(A)+norm(datb)/norm(B)% 得出 x x? x 的估計(jì)值 xxdatx=abs(x0-x00)保存為:求兩者之間的誤差format long for n=4:11為矩陣的階數(shù)生成 Hilbert 矩陣求 Hilbert 矩陣得三種條件數(shù)n=n %n Hi=hilb(n); % cond1Hi=cond(Hi,1) % cond2Hi=cond(Hi,2) condinfHi=cond(Hi,inf) pause end數(shù)值實(shí)驗(yàn)結(jié)果及分析: >> fanshu please input

30、n:n=6 n =6142516881989329385489260144088501316235219292324010100737241437227701x =1 1 1 1 1 1 b =251 410 221 157 218 187 data = datb =+002B =+002 xx = x0 =x x? x 的計(jì)算結(jié)果為:xx(2)NcondestAcond2AcondA210e+00220e+00230e+002e+002e+00240e+00250e+00260e+004e+003e+00370e+003e+002e+00280e+00290e+003e+002e+00210

31、0e+003e+002e+002>> sy5_2please input n:n=8n = 8x0 =x00 =datx =給出對 x x? x 的估計(jì)是: xxx x? x 的理論結(jié)果是:xx結(jié)果相差:(4)ncond1Hicond2HicondinfHi4e+004e+004e+0045e+005e+005e+0056e+007e+007e+0077e+008e+008e+0088e+010e+010e+0109e+012e+011e+01210e+013e+013e+01311e+015e+014e+015討論:線性代數(shù)方程組的性態(tài)與條件數(shù)有著很重要的關(guān)系, 既矩陣的條件數(shù)是

32、刻畫 矩陣性質(zhì)的一個重要的依據(jù),條件數(shù)越大,矩陣“病態(tài)”性越嚴(yán)重,在解線性代 數(shù)方程組的過程中較容易產(chǎn)生比較大的誤差, 則在實(shí)際問題的操作過程中, 我們 必須要減少對條件數(shù)來求解, 把條件數(shù)較大的矩陣化成條件數(shù)較小的矩陣來進(jìn)行 求解。實(shí)驗(yàn)總結(jié):在本次實(shí)驗(yàn)中, 使我們知道了矩陣條件數(shù)對線性代數(shù)方程組求解的影響, 條 件數(shù)越大,對最后解的影響的越大, hilbert 矩陣是一個很”病態(tài)”的矩陣,他 的條件數(shù)隨著階數(shù)的增加而增大, 每增加一階, 條件數(shù)就增大一個數(shù)量級, 在求 解的過程中要盡量避免 hilbert 矩陣學(xué)號: 06450210姓名:萬軒實(shí)驗(yàn)七 非線性方程求根實(shí)驗(yàn)(迭代法、初始值與收斂

33、性)實(shí)驗(yàn)?zāi)康模?初步認(rèn)識非線性問題的迭代法與線性問題迭代法的差別, 探討迭代法 及初始值與迭代收斂性的關(guān)系。問題提出:迭代法是求解非線性方程的基本思想方法,與線性方程的情況一樣, 其構(gòu)造方法可以有多種多樣,但關(guān)鍵是怎樣才能使迭代收斂且有較快的收斂速 度。實(shí)驗(yàn)內(nèi)容:考慮一個簡單的代數(shù)方程2x 2 x 1 0針對上述方程,可以構(gòu)造多種迭代法,如x n 1xn 1(7.1)x n 111xn(7.2)xn 1xn 1(7.3)在實(shí)軸上取初始值 x0,請分別用迭代() - ()作實(shí)驗(yàn),記錄各算法的迭代過程。 實(shí)驗(yàn)要求:(1)取定某個初始值,分別計(jì)算() - ()迭代結(jié)果,它們的收斂性如何?重復(fù) 選取不

34、同的初始值,反復(fù)實(shí)驗(yàn)。請自選設(shè)計(jì)一種比較形象的記錄方式(如利用 Matlab 的圖形功能),分析三種迭代法的收斂性與初值選取的關(guān)系。(2)對三個迭代法中的某個,取不同的初始值進(jìn)行迭代,結(jié)果如何?試分析迭 代法對不同的初值是否有差異?(3)線性方程組迭代法的收斂性是不依賴初始值選取的。比較線性與非線性問 題迭代的差異,有何結(jié)論和問題。實(shí)驗(yàn)過程:程序:clearclcs=input(' 請輸入要運(yùn)行的方程,運(yùn)行第幾個輸入幾 s=');clfif s=1%決定坐標(biāo)軸的范圍和初始值a=;b=; y00=0; x00=input('請輸入第一個函數(shù)的初值:x00=');e

35、lseif s=2a=;b=; y00=0; x00=input(' elseif s=3請輸入第二個函數(shù)的初值:x00=');a=0;b=2; y00=0; x00=input(' endx=linspace(a,b,80);請輸入第三個函數(shù)的初值:x00=')y0=x;%計(jì)算直線 y=xy1=zxy7f(x,s); clear y; y=y0;y1;% 計(jì)算迭代函數(shù) y=f(x)if s=1plot(x,y,'linewidth',1) legend('y=x','y=f1')% 畫圖title('x(

36、n+1)=x(n)2-1')elseif s=2plot(x,y,'linewidth',2) legend('y=x','y=f2')title('x(n+1)=1+1/x(n)')elseif s=3plot(x,y,'linewidth',3) legend('y=x','y=f3') title('x(n+1)=sqrtx(n)+1') end hold on plot(a b,0,0,'k-',0 0,a b,'k-')% 輸出標(biāo)題axis(a,b,a,b) z=;% 畫坐標(biāo)軸for i=1:15% 畫蛛網(wǎng)圖,迭代過程為n=15 次xt(1)=x00;yt(1)=y00;%決定始點(diǎn)坐標(biāo)xt(2)=zxy7f(xt(1),s);y

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論