《計算方法》實驗報告_第1頁
《計算方法》實驗報告_第2頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、計算方法實驗報告學號姓名班級實驗項目名稱計算方法實驗一、實驗名稱實驗一插值與擬合二、實驗目的:明確插值多項式和分段插值多項式各自的優(yōu)缺點;(2)編程實現(xiàn)拉格朗日插值算法,分析實驗結(jié)果體會高次插值產(chǎn)生的龍格現(xiàn)象;運用牛頓插值方法解決數(shù)學問題。二、實驗內(nèi)容及要求1(1)對于f(x)=- ,一5蘭x蘭51 + X要求選取 11 個等距插值節(jié)點,分別采用拉格朗日插值和分段線性插值,計算x 為 0.5, 4.5 處的函數(shù)值并將結(jié)果與精確值進行比較。輸入:區(qū)間長度,n(即 n+1 個節(jié)點),預測點輸出:預測點的近似函數(shù)值,精確值,及誤差(2)已知 彳=1,4 = 2,9 =3,用牛頓插值公式求 V5 的近

2、似值。輸入:數(shù)據(jù)點集,預測點。輸出:預測點的近似函數(shù)值精品文檔四、實驗原理及算法描述算法基本原理:(1)拉格朗日插值法對某個多項式函數(shù)已知有給走的 1 個取值點:(匸山 1 1 (無斛班)具中叼對應(yīng)看自變呈的位置而的對應(yīng)看函數(shù)在這個位置的取值。假設(shè)任意兩個不同的屯都互不相同那么應(yīng)用拉格朗日插值公式所得到的拉格朋日插值務(wù)項式為:乙仗):=D 恥)J=0其中每個與為拉格明日基本釦頁式(或稱插値基函數(shù)),其表達式為:f 匕)_ n 王的一(工觀)(巧J(一工田)9坯)圉3丄,j叼 7 (叼-呦)(巧-巧 7)(叼-巧+1)(衍-以)拉格朗日基本多項式 Zj()的特點是在叼上取值為 1,在其它的點斗

3、J # j 上取值為 0*精品文檔(2)牛頓插值法(x) = /(x0)+/x0,xl(x-) + /xpjr1,xJ(x-i:(J)(x-xl)兀(丈一工業(yè))(兀一xj(兀-工”)精品文檔算法流程精品文檔五、程序代碼及實驗結(jié)果(1) 輸出:A .拉格朗日插值法B.分段線性插值Xy(精確)y(拉格朗日)y(分段線性)誤差(拉)誤差(分)0.5000000.8000000.8434070.750000-0.0542590.0500004.5000000.0470591.5787200.0486425-32.547674-0.033649(2) 輸出:精品文檔Xy(精確)y(牛頓插值) 誤差(牛頓

4、插值)5.000002.2360682.266670-0.013686源碼:(1) A.拉格朗日插值法#in clude#in clude#in cludeusing n amespace std;double Lagra nge(i nt N,vector &X,vector&Ydouble x);int mai n()double p,b,c;char a= n:docout請輸入差值次數(shù) n 的值:N;vectorX(N,0);vectorY(N,0);cout請輸入?yún)^(qū)間長度(a,b): p;cin b;c=b-p;c=c/(N-1);for(int i=0;iN;i+)

5、Xi=p;Yi=1/(1+p*p);p=p+c;cout請輸入要求值 x 的值: x;double result=Lagrange(N,X,Y ,x);精品文檔cout由拉格朗日插值法得出結(jié)果:resultendl;cout a;while(a=y);return 0;double Lagra nge(i nt N,vector &X,vector&Y double x)double result=0;for(int i=0;iN;i+)double temp=Yi;for(i nt j=O;jN;j+)if(i!=j)temp = temp*(x-Xj);temp = tem

6、p/(Xi-Xj);result += temp;return result;B :分段線性插值#in clude#in clude#in cludeusing n amespace std;double fen dua n(i nt N,vector &X,vector&Y,double x,double c );int mai n()double p,b,c;char a= n;docout請輸入差值次數(shù) n 的值:N;vectorX(N,0);vectorY(N,0);cout請輸入?yún)^(qū)間長度(a,b): p;cin b;c=b-p;c=c/(N-1);for(int i=

7、0;iN;i+)Xi=p;Yil=1/(1+p*p);p=p+c;精品文檔cout請輸入要求值 x 的值: x;double result=fenduan(N,X,Y ,x,c);cout由分段線性插值法得出結(jié)果:resultendl;cout a;while(a=y);return 0;double fen dua n(i nt N,vector &X,vector&Y,double x,double c)double result=0;int b;b=0;while(x-Xbc)b=b+1; result=Yb*(1-(x-Xb)/c)+Yb+1*(x-Xb)/c);ret

8、urn result;(3)牛頓插值法#in clude#in clude#in cludeusing n amespace std;double ChaSha ng(i nt n, vector&X,vector&Y);double Newt on( double x,vector &X,vector&Y);int mai n()char a= n;doint n;cout請輸入插值點個數(shù):e ndl;cinn;vectorX (n, 0);vector Y(n, 0);cout請輸入插值點對應(yīng)的值及函數(shù)值(Xi,Yi) : endl;for(int i=0;

9、iXiYi;cout請輸入要求值 x 的值: x;精品文檔cout由牛頓插值法得出結(jié)果:Newton(x,X,Y)endl;cout a;while(a=y); return 0;double ChaSha ng(int n,vector&X,vector&Y)double f=0;double temp=0;for(int i=0;in+1;i+)temp=Yi;for(i nt j=O;j n+1;j+) if(i!=j) temp /= (Xi-Xj);f += temp;return f;double Newt on( double x,vector &X,ve

10、ctor &Y)double result=0;for(i nt i=O;iX.size();i+)double temp=1;double f=ChaSha ng(i,X,Y);for(i nt j=0;ji;j+)temp = temp*(x-Xj); result += f*temp;return result;六、實驗總結(jié)1.通過實驗一數(shù)據(jù)發(fā)現(xiàn), 拉格朗日插值在低次插值時, 同源函數(shù)偏差并不大, 但在高次插值 時同原函數(shù)偏差大、存在明顯的龍格現(xiàn)象,而分段線性插值可以避免出現(xiàn)的龍格現(xiàn)象,與 原函數(shù)比較吻合,但是分段線性插值由于其分段屬性,使得插值函數(shù)失去光滑性,可以考 慮采用 Hermite 插

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論