計算方法試驗_第1頁
計算方法試驗_第2頁
計算方法試驗_第3頁
計算方法試驗_第4頁
計算方法試驗_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、計算方法實驗指導姓名學號院系專業(yè)哈爾濱工業(yè)大學計算方法實驗指導根據實際問題建立的數學模型, 一般不能求出所謂的解析解, 必須針對數學模 型的特點確定適當的計算方法,編制出計算機能夠執(zhí)行的計算程序,輸入計算機, 進行調試,完成運算,如果計算結果存在問題或不知是否正確,還需要重新確定 新的計算方法,再編制出計算程序,輸入計算機,重新調試,完成運算,直至獲 得正確的計算結果,這就是數值計算的全部過程.學生在學習“計算方法和“高級語言等課程時普遍存在的問題是:只會套用教科書中的標準程序進行數值計算,很少有人能夠獨立地將學過的數值算法編 制成計算機程序,至于靈活應用已經掌握的算法求解綜合性較大的課題,那

2、么更是 困難的事情.編寫?計算方法實驗指導?的目的是:突出數值計算程序結構化的思想.提 高學生的編程水平,加深對“計算方法課程內容的理解和掌握,為計算方法“課程的教學效勞,進一步奠定從事數值計算工作的根底.具體地1 .根據“計算方法課程內容的特點,給出五個典型算法的分析流程,學生 可以利用所掌握的“高級語言順利地編制出計算機程序,上機實習,完成實驗環(huán)節(jié)的教學要求.2 .所有的計算實習題目都經過任課教師逐一檢驗,準確無誤.3 .充分利用循環(huán)的思想、迭代的思想,給出算法結構描述和程序語言的對應關系,有利于學生編制相應的程序.4 .結合實習題目,提出實驗要求,要求學生按標準格式寫出相應的實驗報告,實

3、驗報告成績記入期末總成績.需要提醒學生:不能簡單地套用現成的標準程序完成實驗題目,應當把重點放在對算法的理解、程序的優(yōu)化設計、上機調試和計算結果分析上,否那么就失去實驗課的目的啦.5 .五個具體的實驗題目是:實驗題目1拉格朗日(Lagrange)插值實驗題目2龍貝格(Rombe積分法實驗題目3四階龍格一庫塔(Runge-Kutta)方法實驗題目4牛頓(Newton)迭代法實驗題目5高斯(Gauss)列主元消去法要求必須完成其中三個(如果全部完成更好).實驗題目1拉格朗日(Lagrange)插值方法概要:給定平面上n+1個不同的數據點(xk, f(xk), k =0,1,|l, n ,X# Xj

4、 , i # j ;那么滿足條件Pn(Xk)= f (Xk) , k =0,1,IH, n的n次拉格朗日插值多項式是存在唯一的.假設xk a, b, k =0,1,HI ,n ,且函數f(x)充分光滑,那么當xa,b時,有誤差估計式f(n 1)() f(X)Pn(X)=-(X-X0)(X-Xi)|(X-Xn),其一(n 1)!拉格朗日插值算法實驗實驗目的:利用拉格朗日插值多項式Pn(X)求f(X)的近似值輸 入:n+1 個數據點(Xk,f(Xk) , k=0,1,|,n;插值點 x輸 出:f(x)在插值點x的近似值pn(x)程序流程:1 置 y=0.0; k=02 當 k 4n 時,做 2.1

5、 2.42.1 置 l =1.0;2.2 對 j =0,1,|n,k-1,k+1,|,n,置 l =l «x-Xj)/(x Xj)2.3 置 y = y +l f (xk )2.4 置卜=k 13輸出x, y4停機問題1拉格朗日插值多項式的次數 n越大越好嗎?考慮下面兩個拉格朗日插值問題:(1)設f(x)=y, XW5,5,考慮等距節(jié)點的拉格朗日插值多項式Pn(x),1 X即將區(qū)間-5,5進行 n 等分,記 h 二100 , xk =-5.0 +k h , k =0,1,|,n ,構造 Pn(x), n利用拉格朗日插值多項式Pn(x)作為f(x)的近似值.分別取n = 5, n=10

6、, n = 20,同時計算 Pn(x)在 x=0.75, x=1.75, x = 2.75, x = 3.75, x = 4.75 處的函數值.(2)設f(x)=eX , x-1,1,考慮等距節(jié)點的拉格朗日插值多項式R(x),即2 0將區(qū)間-1,1進仃 n 等分,記 h=,xk=1.0+k,h, k = 0,1,|,n ,構造 R(x),利 n用拉格朗日插值多項式Pn(x)作為f (x)的近似值.分別取n = 5, n=10, n = 20,同時計算 (x)在 x = -0.95, x = -0.05, x = 0.05, x = 0.95處的函數值.問題2插值區(qū)間越小越好嗎?考慮下面兩個拉格

7、朗日插值問題:(1)設f(x)= 工,xw1,1,考慮等距節(jié)點的拉格朗日插值多項式Pn(x),1 x即將區(qū)間-1,1進行 n 等分,記 hn20, xk = -1.0 + k,h, k = 0,1j|,n,構造 Pn(x), n利用拉格朗日插值多項式Pn(x)作為f(x)的近似值.分別取n = 5, n =10, n = 20,同時計算 Pn(x)在 x = -0.95, x=0.05, x = 0.05, x = 0.95 處的函數值.(2)設f(x)=ex, x-5,5,考慮等距節(jié)點的拉格朗日插值多項式R(x),即 一 ,、 、一 2 0將區(qū)間-5,5進仃n等分,記h =,xk = -1.

8、0+k h , k =0,1川,n ,構造Pn(x),利 n用拉格朗日插值多項式Pn(x)作為f (x)的近似值.分別取n = 5, n=10, n = 20,同時計算 P1(x)®x = .75, x = -0.25, x = 0.25, x = 4.75處的函數值.問題3在區(qū)間1,1考慮拉格朗日插值問題,為了使得插值誤差較小,應如何選取插值節(jié)點?考慮下面兩個拉格朗日插值問題:(1)設f(x)=3, xM-1,1,考慮非等距節(jié)點的拉格朗日插值多項式E(x),1 x記xi.ncosR1- , k =0,1,|, n,構造Pn(x),利用拉格朗日插值多項式P(x)作為2( n 1)f(

9、x)的近似值.分另 I取 n=5, n=10, n=20,同時計算 R (x)在 x = 0.95, x =-0.05 ,x = 0.05, x =0.95處的函數值.(2)設f(x)=ex, x-1,1,考慮非等距節(jié)點的拉格朗日插值多項式Pn(x),記xk =cos竺+1)n , k =0,1,m,n,構造P*x),利用拉格朗日插值多項式 (x)作為 2( n 1)f(x)的近似值.分另1J取 n=5, n=10, n=20,同時計算 R (x)在 x = 0.95, x =-0.05 , x = 0.05, x =0.95處的函數值.問題4考慮拉格朗日插值問題,內插比外推更可靠嗎?考慮下面

10、兩個拉格朗日插值問題:(1)設f (x)=",關于以 =1 , x=4, x2 =9為節(jié)點的拉格朗日插值多項式 P2(x),利用拉格朗日插值多項式P2(x)作為f(x)的近似值.同時計算P2(x)在x = 5,x=50, x=115, x=185處的函數值.(2)設f(x)=7x關于以x0=36, x1=49, x2 = 64為節(jié)點的拉格朗日插值多 項式P2(x),利用拉格朗日插值多項式P2(x)作為f(x)的近似值.同時計算 P2(x)在x=5, x=50, x=115, x=185處的函數值.(3)設f(x)=仃,關于以x0 =100, X =121 , x2 =144為節(jié)點的拉

11、格朗日插值 多項式F2(x),利用拉格朗日插值多項式 P2(x)作為f(x)的近似值.同時計算P2(x)在 x=5, x=50, x=115, x=185處的函數值.(4)設f(x)=?,關于以 =169, x=196, x2 =225為節(jié)點的拉格朗日插值 多項式F2(x),利用拉格朗日插值多項式 P2(x)作為f(x)的近似值.同時計算P2(x)在 x=5, x=50, x=115, x=185處的函數值.思考題:1 .對實驗1存在的問題,應如何解決?2 .對實驗2存在的問題的答復,試加以說明3 .對實驗3存在的問題的答復,試加以說明4 .如何理解插值問題中的內插和外推?寫出實驗報告實驗題目

12、2龍貝格(Romberg)積分法方法概要:利用復化梯形求積公式、復化辛普生求積公式、復化柯特斯求積公式的誤差估計式計算積分廣f(x)dx.記h=b, Xk=a + k,h, k = 0,1,|,n,其an計算公式:一般地,利用龍貝格算法計算積分,要輸出所謂的T數表龍貝格(Romberg)積分法實驗實驗目的:利用龍貝格(Romberg)積分法計算積分b f(x)dx a輸入:a,b, N,s輸出:龍貝格T-數表程序流程:1 置卜=,m = 1 n2輸出Ti3 對 i =2,3|, N,做 3.1 3,53.1 置 ii =2i,皿 11 ii1置 T2T1h" f (a (k )h)2

13、2 km2輸出T213.2 置 S=(4T2-T)3輸出S213.3 對 m/1,置 C2= (16S2-S)15輸出C2,轉3.613.4 對 m#2,置 R = (64C2 Ci)63輸出R2 ,轉3.63.5 對 m=3,置 tol = R2 R如果tol 鼻,那么停機,否那么轉3.63.6 置 R = R2,Ci= C2,S(=S2,工=丁2, h ,m = m + 124停機問題1:利用龍貝格(Romberg)積分法計算積分1 o公(1) 0 x exdx ,6=103人(2) e exsin xdx ,名=10(3) ,為x, ;=10 ,1 1(4) dx , 1 =100x 1

14、問題2:被積函數無界,如何處理?(1)呼dx,"成 0 x提示:f (0)=呵辿»=1/C、1 cosx ,提示:引進變換(2) 1 / dx,君=10(3)t =、1 - x;二10 上提示:利用等式i1竿dx = f-dx+f號二dx,第一個積分值等于2,第二個 0,x 0、x -.,x積分,利用 f (0) = l'm co,) 1=0;也可以考慮利用分部積分1 cosxdx =2 pCosxd晨 x)1 xsin x§(4) 、dx ; W =10 - 12一,1 -x提示:利用第一類Gauss-Chebyshev求積公式問題3:積分區(qū)間無限,如何

15、處理?七白 、,2公(1) e dx, , 1 =10 J-OQ提不:利用ex dx作近似-o1(2) 1 dx,8=10丘(x 1" x提示:利用變換t =、, 1(3) e"cos3xdx, “10' J_oO提示:Gauss-Hermite求積公式(4) esin2 xdx ,君=10上 -0提示:Gauss-Lagurre求積公式思考題:1 .輸入的參數N有什么意義?2 .在實驗1中二分次數和精度的關系如何?3 .在實驗2中給出的提示具有普遍性嗎?存在其它的方法嗎?試加以說明4 .在實驗3中給出的提示具有普遍性嗎?存在其它的方法嗎?試加以說明 寫出實驗報告實

16、驗題目3四階龍格一庫塔(Runge-Kutta)方法方法概要:給定常微分方程初值問題 記xn =a+n 'h , n =0,1,|, N ,利用四階龍格一庫塔方法可逐次求出微分方程初值問題的數值解yn , n=1,2,川,N.四階龍格一庫塔(Runge- Kutta)方法實驗實驗目的:利用四階龍格一庫塔(Runge-Kutta)方法求解微分方程初值問題輸 入:a,b,a, N輸出:初值問題的數值解xn,yn, n=0,1,2,|,N.程序流程:1 置 xo =a,y0 =a,h ="aN2 對 n =1,2,川,N ,做 2.1 2.42.1 置2.2 置x1 = x0 h2

17、.3 輸出為2.4 x0 = x, y0 = y13停機問題1(1)準確解(2)準確解問題2(1)準確解(2)準確解問題3(1)準確解(2)準確解(3)準確解思考題:1 .對實驗1,數值解和解析解相同嗎?為什么?試加以說明.2 .對實驗2, N越大越精確嗎?試加以說明.3 .對實驗3, N較小會出現什么現象?試加以說明寫出實驗報告實驗題目4牛頓(Newton)迭代法方法概要:求非線性方程f (x) = 0的根x* ,牛頓迭代法計算公式一般地,牛頓迭代法具有局部收斂性,為保證迭代收斂,要求,對充分小的0 >0, a W0(x*,6).如果 f(x)wc2a,b , f(x*)=0, f&#

18、39;(x*) # 0 ,那么,對充分小的0 >0,當口 WO(x ,6)時,由牛頓迭代法計算出的xn收斂于x ,且收斂速度是2階的;如果 f (x)WCma,b , f (x*) = f'(x* )=川=f(m-1)(x*) =0 , f(m)(x*) #0(m >1),那么,對充分小的6>0,當口 WO(x*,6)時,由牛頓迭代法計算出的xn收斂于x*,且收斂速度是1階的;牛頓(Newton)迭代法實驗實驗目的:利用牛頓迭代法求 f(x)=0的根輸 入:初值口,精度的后 ,最大迭代次數N輸 出:方程f (x) =0根X*的近似值或計算失敗標志程序流程:1 置 n

19、=12 當 nEN 時,做 2.1 2.42.1 置 F = f (x0), DF = f <x0)如果曰?鳥,輸出x0;停機如果df|<22,輸出失敗標志;停機2.2 置 x1 =x0 -F / DF2.3 置 Tol = x, -x0如果Tol|<馬,輸出x,;停機2.4 置 n = n +1 , x0 =x,3輸出失敗標志4停機 冗問題 1: (1) cosx x=0, 0=10: *2=10",N =10, x0 =-0.785398163 4(2) esinx=0,鳥=10*,=10",N=10, x0=0.6I可題 2: (1) x e =0,

20、 5=10 ,82 =10 , N 10, x0=0.5(3) x22xe'+e"x =0 ,= 10"6, £2=10", N=20, x0=0.5問題3: (1)由下面的遞推公式可以生成勒讓德(Legendre )多項式試確定 F2(x), P3(x), P4(x)和 P5(x)確定P6(x),求R(x)得所有零點,精度注=106(2)由下面的遞推公式可以生成切比雪夫勒讓德( Chebyshev)多項式試確定 T2(x),T3(x),TKx)和 T5(x)確定T6(x),求T6(x)得所有零點,精度6=10*2j 1xj =cos(n) ,

21、j =0,1, |, n2(n 1)(3)由下面的遞推公式可以生成拉蓋爾( Laguerre )多項式試確定 L2(x), L3(x),L4(x)和 L5(x)求L5(x)得所有零點,精度名=10上(4)由下面的遞推公式可以生成埃爾米特(Hermite )多項式試確定 H2(x), H3(x), H4(x)和 H5(x)確定H6(x),求H6(x)得所有零點,精度名=10上思考題:1 .對實驗1確定初值的原那么是什么?實際計算中應如何解決?2 .對實驗2如何解釋在計算中出現的現象?試加以說明3 .對實驗3存在的問題的答復,試加以說明寫出實驗報告實驗題目5相對高斯(Gauss)列主元消去法方法概

22、要:高斯(Gauss)列主元消去法:對給定的 n階線性方程組Ax = b,首先進行列 主元消元過程,然后進行回代過程,最后得到解或確定該線性方程組是奇異的.如果系數矩陣的元素按絕對值在數量級方面相差很大,那么,在進行列主元消元過程前,先把系數矩陣的元素進行行平衡:系數矩陣的每行元素和相應的右 端向量元素同除以該行元素絕對值最大的元素.這就是所謂的平衡技術.然后再 進行列主元消元過程.如果真正進行運算去確定相對主元,那么稱為顯式相對Gauss列主元消去法;如果不進行運算,也能確定相對主元,那么稱為隱式相對Gauss列主元消去法.顯式相對Gauss列主元消去法:對給定的n階線性方程組Ax = b,

23、首先進行列 主元消元過程,在消元過程中利用顯式平衡技術,然后進行回代過程,最后得到 解或確定該線性方程組是奇異的.隱式相對Gauss列主元消去法:對給定的n階線性方程組Ax = b,首先進行列 主元消元過程,在消元過程中利用隱式平衡技術,然后進行回代過程,最后得到 解或確定該線性方程組是奇異的.實驗目的:利用 Gauss列主元消去法、顯式相對 Gauss列主元消去法、隱式相對 Gauss列主元消去法求解線性方程組 Ax = bo輸 入:n ; a/ bi , i,j =1,21|,n輸出:線性方程組 人乂5的近似解Xi , i =1,2,川,n程序流程:一、Gauss列主元消去法1對k =1,

24、2,川,n1,做1.1 1.3 ,消元過程1.1 尋找最小的正整數 p, k E p En和apk = max ajk.如果apk =0 ,輸出 kk Wj 百 J奇異標志,停機;1.2 如果p#k,那么交換p,k兩行;1.3 對1=卜+1川川,記外=永心計算2.如果ann =.輸出奇異標志,停機;3,置xn = bn / ann)回代過程4,對 k =n 1,2,1 ,置 xk =(bk -Z '4akjXj )/akk、顯式相對Gauss列主元消去法1,對 k =1,2,|,n 1,做 1.1 1.4 ,消元過程1.1 對i =k,k +1,|,n ,計算Si =max a.,如果

25、s =0 ,輸出奇異標志,停機; k<< J計算 aj =aij /Si , j =k, k +1,|,n ;1.2 尋找最小的正整數 p, k E p wn和apk = max ajk ,如果apk=0,輸出 p kg且j奇異標志,停機;1.3 如果p/k,那么交換p,k兩行;1.4 i=k+1J|,n,記 mik = aik /akk ,計算2.如果ann =.輸出奇異標志,停機;3,置Xn = bn /ann,回代過程4,對 k=n1,2,1,置 Xk =(bk -£ nakjXj)/akk三、隱式相對Gauss列主元消去法1,對k=1,2,川,n1 ,做1.1 1

26、.3消元過程1.1 對1 =k,k+1,川,n ,計算s =mOX ajk ,如果S =0 ,輸出奇異標志,停機; k q與 j尋找最小的正整數 p, k W p Wn和apk /sp =mOX aik /§ ;1.2 如果p/k,那么交換p,k兩行;1.3 對 i =k+1,|,n ,記 mik = aik /akk ,計算2 .如果ann =0輸出奇異標志,停機;3,置Xn = bn / ann ,回代過程4 .對 k =n 1,2,1 ,置 Xk =(bk g n'+akjXj )/akk問題1實驗題目:(1)0.40960.22460.3645-0.17840.123

27、40.38720.19200.40020.36780.40150.37810.27860.2943 X10.1129 x20.0643 IX30.3927 _x41.29511.126210.9989 J .2499 -136.0190.860/2 90.860 98.810 0- 67.590-000-67.590132.0146.2600046.260177.171%1 IX2X3一X4 一226.87122.08110.68-223.43-(3 )一 11/21/3-1/41/2 1/31/3 1/41/4 1/51/5 1/61/4 X11/5 x21/6 X31/7_X425/127

28、7/6057/60-319/4201(4 )10 7 87 5 68 6 10X2X3-3212333_7 59 10_X4_ _31實驗題目的準確結果:(1 ) x =(X1, X2,X3, X4)T =(1,1,1,1)T ;(2 ) x =(X1, X2,X3, X4)T =(1,1,1,1)T ;(3 ) x =(X1, X2,X3, X4)T =(1,1,1,1)T ;(4 ) x =(X1, X2,X3, X4)T =(1,1,1,1)t.問題2197 305-206-804 X1(1)(2 )46.8 71.3 -47.488.6 76.4 -10.8J.45 5.90 6.13

29、0.53980.52570.6465-0.58140.71610.6924-0.81870.940052.080236.5-0.55540.3565-0.1872-0.777913611.725.160_-0.2982 X1-0.62550.1291-0.4042X2X3-X40.2058-0.05030.1070-0.1859 -思考題:1 .計算實驗1、實驗2的各個題目說明:對什么類型的線性方程組三種方法是一致的?2 .用三種方法計算實驗1、實驗2的各個題目,哪種方法最好?試加以說明3 .綜合上述兩種結論,總結三種方法的關系,試加以說明.寫出實驗報告說明1 本課程給出五類實驗題目,供學生選

30、用,要求必須完成其中三個實驗.2 實驗課的目的是為了讓學生深入理解和掌握“計算方法課程的根本內容, 同時有助于培養(yǎng)學生的上機調試程序進行數值計算的動手水平,進一步提升利用 數值方法求解數學問題、分析計算結果、選擇算法的綜合水平.3 為了順利完成實驗教學的規(guī)定內容,建議學生按下面方法準備實驗、進行實 驗、寫出實驗報告:(1)應明確實驗的目的,清楚實驗的內容,包括算法和誤差分析;(2)寫出內容摘要,包括算法的理論根底和對算法的初步熟悉;(3)上機前,編寫好計算程序;(4)上機調試程序要做到快速、準確;(5)記錄計算結果要做到真實、準確;(6)課后,認真寫好實驗報告,包括對算法的新熟悉和體會,要特別

31、注意對計算結果的分析和討論,當然包括對計算結果的誤差分析.實驗報告一題目(摘要)Lagrange插值給定平面上n十1個不同的數據點(xk,f(xk), k =0,1,|, n , x-Xj,i # j ;那么滿足條件R(Xk) = f(Xk) , k =0,1,Hl,n的n次拉格朗日插值多項式是存在唯一的.假設 XkWa,b,k=0,1川,n ,且函數f(x)充分光滑,那么當xWa,b時,有誤差估計式f(n ")(、f (X) -Pn(x)(X-Xo)(X-X1)|H(X-Xn) ,a,b(n 1)!前言:(目的和意義)目的:利用拉格朗日插值多項式Pn(x)求f(x)的近似值意義:數學原理程序設計流程本實驗采用CodeBlocks的C文件編寫.Lagrange插值源程序:#include?<stdio.h>?#include

溫馨提示

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

評論

0/150

提交評論