數(shù)值分析課程設(shè)計—課程設(shè)計
課 程 論 文 任 務(wù) 書學生姓名 指導教師 論文題目 數(shù)值分析課程設(shè)計 論文內(nèi)容(需明確列出研究的問題): 本文主要描述運用數(shù)值分析的知識來解決數(shù)學研究問題中的計算問題,包括運用拉格朗日插值公式以及牛頓插值公式來根據(jù)觀測點來構(gòu)造一個反應函數(shù)的特征并計算未觀測到點的函數(shù)值、運用最小二乘法確定系數(shù)以及列主元Gauss消去法求解方程組 。資料、數(shù)據(jù)、技術(shù)水平等方面的要求:論文要符合一般學術(shù)論文的寫作規(guī)范,具備學術(shù)性、科學性和一定的創(chuàng)造性。文字要流暢、語言要準確、論點要清楚、論據(jù)要準確、論證要完整、嚴密,有獨立的觀點和見解。內(nèi)容要理論聯(lián)系實際,計算數(shù)據(jù)要求準確,涉及到他人的觀點、統(tǒng)計數(shù)據(jù)或計算公式等要標明出處,結(jié)論要寫的概括簡短。參考文獻的書寫按論文中引用的先后順序連續(xù)編碼。 發(fā)出任務(wù)書日期 完成論文(設(shè)計)日期 學科組或教研室意見(簽字) 院、系(系)主任意見(簽字) 目錄【摘要】【關(guān)鍵詞】AbstractKeywords一、插值問題與插值多項式 1(一)基礎(chǔ)知識1(二)題目:2(三)程序清單:5(四)實驗結(jié)果分析:7二、最小二乘法7(一)基礎(chǔ)知識7(二)題目:8(三)程序清單:9(四)實驗結(jié)果分析:10三、列主元Gauss消去法11(一)基礎(chǔ)知識11(二)題目12(三)程序清單:12(四)實驗結(jié)果分析:13四、實驗心得:14數(shù)值分析課程設(shè)計【摘要】 數(shù)值分析是研究各種數(shù)學問題求解的數(shù)值計算方法,是數(shù)學中計算數(shù)學分支的重要內(nèi)容。近幾十年來,隨著計算機的飛速發(fā)展,數(shù)值計算方法的學習與研究越來越離不開計算機。實際計算中遇到的數(shù)值問題只有與計算機相結(jié)合,算法與程序密切聯(lián)系,形成切實可靠的數(shù)值軟件才能為社會創(chuàng)造更大的社會財富。本文主要描述運用數(shù)值分析的知識來解決數(shù)學研究問題中的計算問題,包括運用拉格朗日插值公式以及牛頓插值公式來根據(jù)觀測點來構(gòu)造一個反應函數(shù)的特征并計算未觀測到點的函數(shù)值、運用最小二乘法確定系數(shù)以及列主元Gauss消去法求解方程組 ?!娟P(guān)鍵詞】插值問題與插值多項式 最小二乘法 列主元Gauss消去法11Course Design for Numerical AnalysisAbstract Numerical analysis is an important branch of mathematics, which offers various mumerical methods to solve mathematical problem solving. In recent decades, with the rapid development of computers ,numerical methods of learning and research are increasingly inseparable from the computer. Actual numerical problems encountered in the calculation only combined with the computer, as well as algorithms and procedures contacted closely in order to form a practical and reliable numerical software, can it create a great of social wealth. This paper use numerical analysis of mathematical knowledge to solve research problems and computational problems, including by using column pivot gauss elimination method for the solution of equations, Newtons iterative method for finding the root of a equation; Including using Lagrange interpolation formula and the Newton interpolation formula to according to the characteristics of the observation point to construct a response function not observation to point and calculate the function value, using the least squares method to determine coefficient, and column pca Gauss elimination method of solving equations.Keywords With the interpolation polynomial interpolation problem The least square method Column pca Gauss elimination method1一、插值問題與y=f(x)插值多項式(一)基礎(chǔ)知識定義1 設(shè)為區(qū)間上y=f(x)函數(shù),為上互不相同的點,為給定的某一函數(shù)類,若上有函數(shù),滿足 . (1)則稱為關(guān)于節(jié)點在上的插值函數(shù),稱點為插值節(jié)點;稱為插值型值點,簡稱型值點或插值點;稱為被插函數(shù).定義2 已知函數(shù)在區(qū)間上的個點的值,即已知,尋求一個解析形式的函數(shù),使之滿足 (2)則稱為插值結(jié)點,為被插值函數(shù),為插值函數(shù),稱條件為插值條件,若為次數(shù)不超過的多項式,即, . (3)其中為實數(shù),則稱為插值多項式.定理1在個相異結(jié)點滿足插值條件而次數(shù)不高于的多項式是唯一的.拉格朗日插值多項式定義:對某個多項式函數(shù),已知有給定的k+1個取值點:其中xj對應著自變量的位置,而yj對應著函數(shù)在這個位置的取值。假設(shè)任意兩個不同的xj都互不相同,那么應用拉格朗日插值公式所得到的拉格朗日插值多項式為:其中每個為拉格朗日基本多項式(或稱插值基函數(shù)),其表達式為:拉格朗日基本多項式的特點是在xj 上取值為1,在其它的點 上取值0。 求拉格朗日插值多項式的算法:輸入:數(shù)據(jù)對應的坐標點構(gòu)成的向量x,y和要求的點x0;輸出:拉格朗日插值多項式已經(jīng)特值對應的y值Step1: 對于i=1:n 對于j=1:n 如果j不等于i,執(zhí)行step2; 執(zhí)行step3Step2: l=l*(t-x(j)/(x(i)-x(j);/這就是計算出的拉格朗日基本多項式step3:f=f+l;/計算插值多項式 (二)題目:根據(jù)下表所列的數(shù)據(jù)點求出其拉格朗日插值多項式及牛頓插值多項式,并計算當x=2.0時的值。123-45248272 118222621.拉格朗日多項式解:編寫拉格朗日多項式插值方法函數(shù)>> x=1 2 3 -4 5;>> y=2 48 272 1182 2262;>> f=largance(x,y) f = 2.+t2-3.*t-2.*t3+4.*t4 >> f=largance(x,y,2.0)f = 48>> 2.牛頓插值多項式x=1 2 3 -4 5;y=2 48 272 1182 2262;f=Newton(x,y) f = 2.-3.*t+t2-2.*t3+4.*t4 >> x=1 1.2 1.8 2.5 4;>> y=1 1.44 3.24 6.25 16;f=Newton(x,y) f = .182711e-14-.482154e-14*t+1.00000*t2-.169177e-14*t3+.211471e-15*t4 >> f=Newton(x,y,2.0)f = 4 (三)程序清單:1.拉格朗日插值多項式function f=largance(x,y,x0)syms t;%確保輸入數(shù)據(jù)正確if(length(x)=length(y) n=length(x);else disp(x和y的維數(shù)不同) return ;end f=0.0;for(i=1:n) l=y(i); %計算拉格朗日基本多項式 for(j=1:n) if(j=i) l=l*(t-x(j)/(x(i)-x(j); end; end %計算插值多項式 f=f+l; %簡化多項式 simplify(f); if(i=n) if(nargin=3) f=subs(f,t,x0);%將特定值x0帶入多項式 else f=collect(f);%合并同類項 f=vpa(f,6);%指定計算數(shù)據(jù)的精度 end endEnd2.牛頓插值公式function f=Newton(x,y,x0)syms t;if(length(x)=length(y) n=length(x); c(1:n)=0.0;else disp(x和y的維數(shù)不相等!); return;endf=y(1);yl=0;l=1;for (i=1:n-1) for (j=i+1:n) y1(j)=(y(j)-y(i)/(x(j)-x(i); end c(i)=y1(i+1); l=l*(t-x(i); f=f+c(i)*l; simplify(f); y=y1; if(i=n-1) if(nargin=3) f=subs(f,t,x0); else f=collect(f); f=vpa(f,6); end endend(4) 實驗結(jié)果分析:通過比較實驗結(jié)果可知他們計算的插值基點得函數(shù)值基本相同,具有較高的穩(wěn)定性;拉格朗日插值多項式形式對稱,但是用它計算時,若要增加一個插值點,則原先計算的插值多項式對計算后來的多項式?jīng)]有用,這樣增加了計算工作量;而對于牛頓插值公式構(gòu)造的插值多項式,若增加一個插值基點,原先計算的結(jié)果對于后來的計算過程仍有用。用matlab編寫程序后可以準確算出結(jié)果。2、 最小二乘法(1) 基礎(chǔ)知識在我們研究兩個變量(x, y)之間的相互關(guān)系時,通??梢缘玫揭幌盗谐蓪Φ臄?shù)據(jù)(x1, y1、x2, y2. xm , ym);將這些數(shù)據(jù)描繪在x -y直角坐標系中: (式1-1)其中:、 是任意實數(shù)為建立這直線方程就要確定和,應用最小二乘法原理,將實測值與利用(式1-1)計算值()的離差()的平方和最小為“優(yōu)化判據(jù)”。 令: (式1-2)把(式1-1)代入(式1-2)中得: (式1-3)當平方最小時,可用函數(shù) 對、求偏導數(shù),令這兩個偏導數(shù)等于零。亦即: (式1-4) (式1-5)得到的兩個關(guān)于、 為未知數(shù)的兩個方程組,解這兩個方程組得出: (式1-6) (式1-7)這時把、 代入(式1-1)中, 此時的(式1-1)就是我們回歸的元線性方程即:。在回歸過程中,回歸的關(guān)聯(lián)式是不可能全部通過每個回歸數(shù)據(jù)點(x1, y1、 x2, y2.xm,ym),為了判斷關(guān)聯(lián)式的好壞,可借助相關(guān)系數(shù)“R”,統(tǒng)計量“F”,剩余標準偏差“S”進行判斷;“R”越趨近于 1 越好;“F”的絕對值越大越好;“S”越趨近于 0 越好。 (式1-10) 在(式1-1)中,m為樣本容量,即實驗次數(shù);Xi、Yi分別任意一組實驗X、Y的數(shù)值。(二)題目:液體的表面張力是溫度的線性函數(shù),用最小二乘法確定系數(shù).01020304080909568.067.166.4 65.664.661.861.060.0實驗結(jié)果:ans = -0.0799 67.9593 (三)程序清單:>> T=0 10 20 30 40 80 90 95;>> S=68.0 67.1 66.4 65.6 64.6 61.8 61.0 60.0;>> polyfit(T,S,1)(4) 實驗結(jié)果分析:通過運用matlab軟件,編寫程序?qū)σ后w的表面張力是溫度的線性函數(shù)的分析可知,在已知T和S的情況下,運用程序能夠準確的求解出線性函數(shù)的系數(shù)a和b.并且準確度是相當高,實驗結(jié)果較為可信。三、列主元Gauss消去法(1) 基礎(chǔ)知識1.高斯消去法就是通過矩陣的行變換達到消元的目的,從而將方程組的系數(shù)矩陣由對稱矩陣變?yōu)槿蔷仃?,最后獲得方程組的解。算法步驟: 輸入 方程組的階數(shù)n;增廣矩陣A,b 輸出: 方程組的解x1,x2,.xn;Step1: 對k=1,2,.,n-1做step25 Step2 選主元:求使 = Step3 若=0,則輸出(A is singular);停機 Step4 若k,則;,j=k,k+1,.n+1.(交換增廣矩陣的第 行與第k行) Step5 對i=k+1,.n做step67. Step6 = Step7 對j=k+1,.n+1 Step8 若=0,則輸出(A is singular);停機;否則, Step9 對k=n-1,.1 Step10 輸出;停機(二)題目用列主元Gauss消去法解方程組運行結(jié)果:>> clear >> A=2,4,-6;1,5,3;1,3,2;>> b=-4;10;5;>> x=gaussc(A,b)x =-3 2 1(三)程序清單:function x=gaussc(A,b)n,m=size(A); A=A,b;for k=1:n-1 for p=k+1:n if abs(A(p,k)>abs(A(k,k) for j=k:n+1 t=A(k,j); A(k,j)=A(p,j); A(p,j)=t; end end end %搜索主元并交換 for i=k+1:n l=-A(i,k)/A(k,k); for j=k+1:n+1 A(i,j)=A(i,j)+l*A(k,j); end endend %消去過程結(jié)束x(n)=A(n,n+1)/A(n,n);for i=n-1:-1:1 s=0; for j=i+1:n s=s+A(i,j)*x(j); end x(i)=(A(i,n+1)-s)/A(i,i);End(4) 實驗結(jié)果分析:采用gauss消去法時,如果消元時對角線上的元素較大,不進行列主元計算,計算結(jié)果一般可以達到要求,否則必須進行列主元這一步,以減小誤差影響。通過檢驗可以得出結(jié)果是準確的,正確反應了實驗程序的編寫的正確性。并且Gauss消去法的消元過程不至于中斷,并且舍入誤差較小,實驗結(jié)果較為精確。4、 實驗心得:通過這次數(shù)值分析課程設(shè)計,我運用matlab軟件分別解決了包括運用拉格朗日插值公式以及牛頓插值公式來根據(jù)觀測點來構(gòu)造一個反應函數(shù)的特征并計算未觀測到點的函數(shù)值、運用最小二乘法確定系數(shù)以及列主元Gauss消去法求解方程組在內(nèi)的問題,這其中自己遇到很多不懂得地方,但是通過查閱圖書資料,加之一遍又一遍的調(diào)試程序,還是順利的完成了課程設(shè)計,在這個過程中,我學會了很多以前不懂得程序解法,懂得了如何快速調(diào)試程序,然后運行成功。當然,我深知自己理論知識的不夠,我定將加強自己理論的研究,體驗數(shù)學的魅力!參考文獻1黃友謙,程詩杰,陳浙鵬,數(shù)值試驗,北京:高等教育出版社,19892計算方法鄧建中等編,西安交大出版社,1985。3數(shù)值計算和C程序集蔣長錦編著,中國科學技術(shù)大學出版社,1998。4計算方法引論徐萃薇編,高等教育出版社,1999。5陳寶林數(shù)值分析合肥:中國科學技術(shù)大學出版社,2010.7,112-1236林成森數(shù)值分析北京:科學出版社,2007,1923 119130 7蔡大用,數(shù)值分析與實驗學習指導,北京:清華大學出版社與施普林格出版社,2001課程論文成績評定表學生姓名專業(yè)班級論文題目數(shù)值分析課程設(shè)計指導教師評語及意見:指導教師評閱成績: 指導教師簽字 年 月 日評閱人評語及意見:評閱人評閱成績: 評閱人簽字 年 月 日總評成績(以百分記): 年 月 日15