計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合課件_第1頁
計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合課件_第2頁
計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合課件_第3頁
計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合課件_第4頁
計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合課件_第5頁
已閱讀5頁,還剩175頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合第八章MATLAB數(shù)據(jù)處理教學(xué)目標(biāo)介紹MATLAB數(shù)據(jù)插值和數(shù)據(jù)擬合學(xué)習(xí)要求熟練掌握MATLAB數(shù)據(jù)插值和數(shù)據(jù)擬合。計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合計算機(jī)仿真技術(shù)MA1第八章MATLAB數(shù)據(jù)處理教學(xué)目標(biāo)介紹MATLAB數(shù)據(jù)插值和數(shù)據(jù)擬合學(xué)習(xí)要求熟練掌握MATLAB數(shù)據(jù)插值和數(shù)據(jù)擬合。第八章MATLAB數(shù)據(jù)處理教學(xué)目標(biāo)學(xué)習(xí)要求2一、數(shù)據(jù)擬合什么叫數(shù)據(jù)擬合數(shù)據(jù)擬合是求一個簡單的函數(shù),例如是一個低次多項式,不要求通過已知的這些點,而是要求在整體上“盡量好”的逼近原函數(shù)。Matlab常用擬合方法:多項式擬合(polyfit),非線性曲線擬合(lsqcurvefit)一、數(shù)據(jù)擬合什么叫數(shù)據(jù)擬合3一、數(shù)據(jù)擬合多項式曲線擬合:polyfit.函數(shù)名稱:polyfit格式:p=polyfit(x,y,m),x,y為已知數(shù)據(jù)點向量,分別表示橫,縱坐標(biāo),m為擬合多項式的次數(shù),結(jié)果返回m次擬合多項式系數(shù),從高次到低次存放在向量p中.y0=polyval(p,x0),可求得多項式在x0處的值y0.一、數(shù)據(jù)擬合多項式曲線擬合:polyfit.4一、數(shù)據(jù)擬合例題1:已知觀測數(shù)據(jù)點如表所示,用3次和6次多項式擬合xy0-0.4470.11.9780.23.280.36.160.47.080.57.340.67.660.79.560.89.480.99.3111.2一、數(shù)據(jù)擬合例題1:已知觀測數(shù)據(jù)點如表所示,用3次和6次多項5一、數(shù)據(jù)擬合Matlab代碼:x=0:0.1:1;y=[-.447,1.978,3.28,6.16,7.08,7.34,7.66,9.56,9.48,9.3,11.2]plot(x,y,'k.','markersize',25);axis([01.3-216])p3=polyfit(x,y,3);p6=polyfit(x,y,6);t=0:0.1:1.2;s=polyval(p3,t);s1=polyval(p6,t);holdon;plot(t,s,'r-','linewidth',2);plot(t,s1,'b--','linewidth',2);gridon一、數(shù)據(jù)擬合Matlab代碼:6一、數(shù)據(jù)擬合例題2:用切削機(jī)床進(jìn)行金屬品加工時,為了適當(dāng)?shù)卣{(diào)整機(jī)床,需要測定刀具的磨損速度.在一定的時間測量刀具的厚度,得數(shù)據(jù)如表所示:切削時間t/h030.0129.1228.4328.1428.0527.7627.5727.2827.0刀具厚度y/cm切削時間t/h926.81026.51126.31226.11325.71425.31524.81624.0刀具厚度y/cm一、數(shù)據(jù)擬合例題2:用切削機(jī)床進(jìn)行金屬品加工時,為了適當(dāng)?shù)?一、數(shù)據(jù)擬合Matlab代碼:t=[0:1:16];y=[30.029.128.428.128.027.727.527.227.026.826.526.326.125.725.324.824.0];plot(t,y,'*');holdona=polyfit(t,y,5);y1=polyval(a,t);plot(t,y1),holdoff;一、數(shù)據(jù)擬合Matlab代碼:8一、數(shù)據(jù)擬合例題3:一個15.4cm×30.48cm的混凝土柱在加壓實驗中的應(yīng)力-應(yīng)變關(guān)系測試點的數(shù)據(jù)如表所示已知應(yīng)力-應(yīng)變關(guān)系可以用一條指數(shù)曲線來描述,即假設(shè)式中,表示應(yīng)力,單位是N/m2;表示應(yīng)變,求系數(shù)1.552.472.933.032.89一、數(shù)據(jù)擬合例題3:一個15.4cm×30.48cm的混凝土9一、數(shù)據(jù)擬合求解:1)要使用多項式擬合,因此需要將表達(dá)式轉(zhuǎn)換為多項式形式化為k1,k2

的線性函數(shù).于是,令即一、數(shù)據(jù)擬合求解:化為k1,k2的線性函數(shù).于是,令即10一、數(shù)據(jù)擬合matlab代碼:x=[500*1.0e-61000*1.0e-61500*1.0e-62000*1.0e-62375*1.0e-6];y=[3.103*1.0e+32.465*1.0e+31.953*1.0e+31.517*1.0e+31.219*1.0e+3];z=log(y);a=polyfit(x,z,1);k1=exp(a(2));w=[1.552.472.933.032.89]plot(x,w,'*')y1=exp(a(2))*x.*exp(a(1)*x);plot(x,w,'*',x,y1,'r-')一、數(shù)據(jù)擬合matlab代碼:11已知應(yīng)力-應(yīng)變關(guān)系可以用一條指數(shù)曲線來描述,即假設(shè)式中,表示應(yīng)力,單位是N/m2;表示應(yīng)變.擬合曲線為:令則求得于是一、數(shù)據(jù)擬合已知應(yīng)力-應(yīng)變關(guān)系可以用一條指數(shù)曲線來描述,即假設(shè)式中,12在實際應(yīng)用中常見的擬合曲線有:直線多項式一般n=2,3,不宜過高.雙曲線(一支)指數(shù)曲線一、數(shù)據(jù)擬合在實際應(yīng)用中常見的擬合曲線有:直線多項式一般n=2,3,132.非線性曲線擬合:lsqcurvefit.功能:x=lsqcurvefit(fun,x0,xdata,ydata)[x,resnorm]=lsqcurvefit(fun,x0,xdata,ydata)根據(jù)給定的數(shù)據(jù)xdata,ydata(對應(yīng)點的橫,縱坐標(biāo)),按函數(shù)文件fun給定的函數(shù),以x0為初值作最小二乘擬合,返回函數(shù)fun中的系數(shù)向量x和殘差的平方和resnorm.一、數(shù)據(jù)擬合2.非線性曲線擬合:lsqcurvefit.功能:x=14例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.23.810.34.50.45.180.560.67.050.78.560.89.690.911.25113.17求三個參數(shù)a,b,c的值,使得曲線f(x)=aex+bx2+cx3

與已知數(shù)據(jù)點在最小二乘意義上充分接近.首先編寫存儲擬合函數(shù)的函數(shù)文件.functionf=nihehanshu(x,xdata)f=x(1)*exp(xdata)+x(2)*xdata.^2+x(3)*xdata.^3保存為文件nihehanshu.m一、數(shù)據(jù)擬合例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.15例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.23.810.34.50.45.180.560.67.050.78.560.89.690.911.25113.17求三個參數(shù)a,b,c的值,使得曲線f(x)=aex+bx2+cx3

與已知數(shù)據(jù)點在最小二乘意義上充分接近.編寫下面的程序調(diào)用擬合函數(shù).xdata=0:0.1:1;ydata=[3.1,3.27,3.81,4.5,5.18,6,7.05,8.56,9.69,11.25,13.17];x0=[1,1,1];[x,resnorm]=lsqcurvefit(@nihehanshu,x0,xdata,ydata)一、數(shù)據(jù)擬合例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.16編寫下面的程序調(diào)用擬合函數(shù).xdata=0:0.1:1;ydata=[3.1,3.27,3.81,4.5,5.18,6,7.05,8.56,9.69,11.25,13.17];x0=[0,0,0];[x,resnorm]=lsqcurvefit(@nihehanshu,x0,xdata,ydata)程序運行后顯示x=3.00224.03040.9404resnorm=0.0912一、數(shù)據(jù)擬合編寫下面的程序調(diào)用擬合函數(shù).xdata=0:0.1:1;程序17例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.23.810.34.50.45.180.560.67.050.78.560.89.690.911.25113.17求三個參數(shù)a,b,c的值,使得曲線f(x)=aex+bx2+cx3

與已知數(shù)據(jù)點在最小二乘意義上充分接近.說明:最小二乘意義上的最佳擬合函數(shù)為f(x)=3ex+4.03x2+0.94x3.此時的殘差是:0.0912.一、數(shù)據(jù)擬合例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.18f(x)=3ex+4.03x2+0.94x3.擬合函數(shù)為:一、數(shù)據(jù)擬合f(x)=3ex+4.03x2+0.94x3.擬合19練習(xí):1.已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.23.810.34.50.45.180.560.67.050.78.560.89.690.911.25113.17求用三次多項式進(jìn)行擬合的曲線方程.2.已知觀測數(shù)據(jù)點如表所示xy1.617.72.7491.313.14.1189.43.6110.82.334.50.644.9409.13652.436.9求a,b,c的值,使得曲線f(x)=aex+bsinx+clnx與已知數(shù)據(jù)點在最小二乘意義上充分接近.一、數(shù)據(jù)擬合練習(xí):1.已知觀測數(shù)據(jù)點如表所示xy03.10.13.2720二、數(shù)據(jù)插值什么叫數(shù)據(jù)插值用插值的方法對一函數(shù)進(jìn)行近似,要求所得到的插值多項式經(jīng)過已知插值節(jié)點;在n比較大的情況下,插值多項式往往是高次多項式,這也就容易出現(xiàn)振蕩現(xiàn)象(龍格現(xiàn)象),即雖然在插值節(jié)點上沒有誤差,但在插值節(jié)點之外插值誤差變得很大,從“整體”上看,插值逼近效果將變得“很差”常用插值方法:分段線性插值、三次樣條曲線插值二、數(shù)據(jù)插值什么叫數(shù)據(jù)插值21已知n+1個節(jié)點其中互不相同,不妨設(shè)求任一插值點處的插值節(jié)點可視為由產(chǎn)生,g表達(dá)式復(fù)雜,甚至無表達(dá)式二、數(shù)據(jù)插值已知n+1個節(jié)點其中互不相同,不妨設(shè)求任一插值點處的插值221.分段線性插值xjxj-1xj+1x0xn實用插值方法機(jī)翼下輪廓線2.三次樣條插值細(xì)木條:樣條二、數(shù)據(jù)插值1.分段線性插值xjxj-1xj+1x0xn實用23輸入:節(jié)點x0,y0,插值點x(均為數(shù)組,長度自定義);輸出:插值y(與x同長度數(shù)組).1.分段線性插值:y=interp1(x0,y0,x)y=interp1(x0,y0,x,’linear’)2.三次樣條插值:y=interp1(x0,y0,x,’spline’)或y=spline(x0,y0,x)二、數(shù)據(jù)插值輸入:節(jié)點x0,y0,插值點x(均為數(shù)組,長度自定義24例5對在[-1,1]上,用n=20的等距分點進(jìn)行分段線性插值,繪制f(x)及插值函數(shù)的圖形.解在命令窗口輸入:x=-1:0.1:1y=1./(1+9*x.^2)xi=-1:0.1:1yi=interp1(x,y,xi)plot(x,y,'r-',xi,yi,'*')二、數(shù)據(jù)插值第十次課到此例5對在[-25例6對在[-5,5]上,用n=11個等距分點作分段線性插值和三次樣條插值,用m=21個插值點作圖,比較結(jié)果.解在命令窗口輸入:n=11,m=21x=-5:10/(m-1):5y=1./(1+x.^2)z=0*xx0=-5:10/(n-1):5y0=1./(1+x0.^2)y1=interp1(x0,y0,x)y2=interp1(x0,y0,x,'spline')[x'y'y1'y2']plot(x,z,'r',x,y,'k:',x,y1,'b',x,y2,'g')gtext('Piece.-linear.'),gtext('Spline'),gtext('y=1/(1+x^2)')二、數(shù)據(jù)插值例6對在[-5,52601.00001.00001.00000.50000.80000.75000.82051.00000.50000.50000.50001.50000.30770.35000.29732.00000.20000.20000.20002.50000.13790.15000.14013.00000.10000.10000.10003.50000.07550.07940.07454.00000.05880.05880.05884.50000.04710.04860.04845.00000.03850.03850.0385例6對在[-5,5]上,用n=11個等距分點作分段線性插值和三次樣條插值,用m=21個插值點作圖,比較結(jié)果.xyy1y2二、數(shù)據(jù)插值01.00001.27解在命令窗口輸入:例7在一天24h內(nèi),從零點開始每間隔2h測得的環(huán)境溫度為12,9,9,10,18,24,28,27,25,20,18,15,13二、數(shù)據(jù)插值(單位:)推測在每1s時的溫度.并描繪溫度曲線.t=0:2:24T=[129910182428272520181513]plot(t,T,'*')ti=0:1/3600:24T1i=interp1(t,T,ti)plot(t,T,'*',ti,T1i,'r-')T2i=interp1(t,T,ti,'spline')plot(t,T,'*',ti,T1i,'r-',ti,T2i,'g-')解在命令窗口輸入:例7在一天24h內(nèi),從零點開始28例8在飛機(jī)的機(jī)翼加工時,由于機(jī)翼尺寸很大,通常在圖紙上只能標(biāo)出部分關(guān)鍵點的數(shù)據(jù).某型號飛機(jī)的機(jī)翼上緣輪廓線的部分?jǐn)?shù)據(jù)如下:x04.749.051938577695114133y05.238.111.9716.1517.116.3414.6312.166.69x152171190y7.033.990二、數(shù)據(jù)插值例8在飛機(jī)的機(jī)翼加工時,由于機(jī)翼尺寸很大,通常在圖29例8在飛機(jī)的機(jī)翼加工時,由于機(jī)翼尺寸很大,通常在圖紙上只能標(biāo)出部分關(guān)鍵點的數(shù)據(jù).某型號飛機(jī)的機(jī)翼上緣輪廓線的部分?jǐn)?shù)據(jù)如下:x=[04.749.051938577695114133152171190]y=[05.238.111.9716.1517.116.3414.6312.169.697.033.990]xi=[0:0.001:190]yi=interp1(x,y,xi,'spline')plot(xi,yi)二、數(shù)據(jù)插值例8在飛機(jī)的機(jī)翼加工時,由于機(jī)翼尺寸很大,通常在圖30例9天文學(xué)家在1914年8月份的7次觀測中,測得地球與金星之間距離(單位:m),并取其常用對數(shù)值與日期的一組歷史數(shù)據(jù)如下所示,試推斷何時金星與地球的距離(單位:m)的對數(shù)值為9.9352.日期18202224262830距離對數(shù)9.96189.95449.94689.93919.93129.92329.9150解由于對數(shù)值9.9352位于24和26兩天所對應(yīng)的對數(shù)值之間,所以對上述數(shù)據(jù)用三次樣條插值加細(xì)為步長為1的數(shù)據(jù):二、數(shù)據(jù)插值例9天文學(xué)家在1914年8月份的7次觀測中,測得地球與31解由于對數(shù)值9.9352位于24和26兩天所對應(yīng)的對數(shù)值之間,所以對上述數(shù)據(jù)用三次樣條插值加細(xì)為步長為1的數(shù)據(jù):x=[18:2:30]y=[9.96189.95449.94689.93919.93129.92329.9150]xi=[18:1:30]yi=interp1(x,y,xi,'spline')A=[xi;yi]二、數(shù)據(jù)插值解由于對數(shù)值9.9352位于24和26兩天所32練習(xí):1.設(shè)在區(qū)間[-2,2]上用10等分點作為節(jié)點,分別用三種插值方法:二、數(shù)據(jù)插值(1)計算并輸出在該區(qū)間的20等分點的函數(shù)值.(2)輸出這個函數(shù)及兩個插值函數(shù)的圖形.(3)對輸出的數(shù)據(jù)和圖形進(jìn)行分析.練習(xí):1.設(shè)在區(qū)間33練習(xí):2.已知某型號飛機(jī)的機(jī)翼斷面下緣輪廓線上的部分?jǐn)?shù)據(jù)如表所示:假設(shè)需要得到x

坐標(biāo)每改變0.1時的y

坐標(biāo),分別用兩種插值方法對機(jī)翼斷面下緣輪廓線上的部分?jǐn)?shù)據(jù)加細(xì),并作出插值函數(shù)的圖形.xy0031.251.772.092.1112.0121.8131.2141.0151.6二、數(shù)據(jù)插值練習(xí):2.已知某型號飛機(jī)的機(jī)翼斷面下緣輪廓線上的部分?jǐn)?shù)據(jù)如34(1)打開曲線擬合工具界面通過cftool命令打開曲線擬合工具界面三、擬合工具箱(1)打開曲線擬合工具界面三、擬合工具箱35Data按鈕:可輸出、查看和平滑數(shù)據(jù);Fitting按鈕:可擬合數(shù)據(jù)、比較擬合曲線和數(shù)據(jù)集;Exclude按鈕:可以從擬合曲線中排除特殊的數(shù)據(jù)點;Ploting按鈕:在選定區(qū)間后,單擊按鈕,可以顯示擬合曲線和數(shù)據(jù)集;Analysis按鈕:可以做內(nèi)插法、外推法、微分或積分?jǐn)M合。三、擬合工具箱五個按鈕Data按鈕:可輸出、查看和平滑數(shù)據(jù);三、擬合工具箱五個按鈕36在輸入數(shù)據(jù)之前,數(shù)據(jù)變量必須存在于matlab的工作區(qū)間。可以通過load命令輸入變量。單擊曲線擬合工具界面中的Data按鈕,打開Data對話框,在對話框中進(jìn)行設(shè)置,可以輸入數(shù)據(jù)。注意:三、擬合工具箱在輸入數(shù)據(jù)之前,數(shù)據(jù)變量必須存在于注意:三、擬合37包括兩個選項卡:DataSets和Smooth.DataSets選項卡:.Importworkspacevectors把向量輸入工作區(qū),要注意的是變量必須具有相同的維數(shù),無窮大的值和不定值被忽略。Xdata用于選擇觀測數(shù)據(jù)Ydata用于選擇X的響應(yīng)數(shù)據(jù)Weight用于選擇權(quán)重,與響應(yīng)數(shù)據(jù)相聯(lián)系的向量,如果沒選擇,默認(rèn)值為1.Data對話框:三、擬合工具箱包括兩個選項卡:DataSets和Smooth.Da38三、擬合工具箱.Preview對所選向量進(jìn)行圖形化預(yù)覽.Datasetname設(shè)置數(shù)據(jù)集的名稱。工具箱可以隨即產(chǎn)生唯一的文件名,但用戶可以重命名。.Datasets選項以列表的形式顯示所有擬合的數(shù)據(jù)集。當(dāng)選擇一個數(shù)據(jù)集時,可以對它做如下操作:

.View查看數(shù)據(jù)集,以圖標(biāo)形式和列表形式,可以選擇方法排除異常值;

.Rename重命名.Delete刪除數(shù)據(jù)組Data對話框:三、擬合工具箱.Preview對所選向量進(jìn)行圖形化預(yù)覽Da39census有兩個變量:cdate和pop。

cdate是一個年向量,包括1790-1990年,pop是對應(yīng)年份的美國人口。whos-filecensusNameSizeBytesClassAttributescdate21x1168doublepop21x1168doubleloadcensuscftool(cdate,pop)例題,用matlab自帶的文件census擬合:三、擬合工具箱census有兩個變量:cdate和pop。例題,用40三、擬合工具箱散點圖三、擬合工具箱散點圖41三、擬合工具箱單擊Data按鈕三、擬合工具箱單擊Data按鈕42三、擬合工具箱在Xdata和Ydata兩個下拉式列表框中選擇變量名,將在Data對話框中顯示散點圖的預(yù)覽效果:三、擬合工具箱在Xdata和Ydata兩個下拉式列表框中43三、擬合工具箱當(dāng)選擇Datasets列表框中的數(shù)據(jù)集時,單擊View按鈕,打開ViewDataSet對話框工作表方式三、擬合工具箱當(dāng)選擇Datasets列表框中的數(shù)據(jù)集時,單44在曲線擬合工具箱中,數(shù)據(jù)的預(yù)處理主要包括平滑法、排除法和區(qū)間排除法等。(1)平滑數(shù)據(jù)打開擬合工具箱,單擊Data按鈕,打開Data對話框,選擇Smooth選項卡數(shù)據(jù)預(yù)處理:三、擬合工具箱在曲線擬合工具箱中,數(shù)據(jù)的預(yù)處理主要包數(shù)據(jù)預(yù)處理:三、擬合工45三、擬合工具箱三、擬合工具箱46.Originaldataset用于挑選需要擬合的數(shù)據(jù)集;.Smootheddataset平滑數(shù)據(jù)的名稱;.Method用于選擇平滑數(shù)據(jù)的方法,每一個相應(yīng)數(shù)據(jù)用通過特殊的曲線平滑方法所計算的結(jié)果來取代。平滑數(shù)據(jù)的方法包括:(ⅰ)Movingaverage用移動平均值進(jìn)行替換;(ⅱ)Lowess局部加權(quán)散點圖平滑數(shù)據(jù),采用線性最小二乘法和一階多項式擬合得到的數(shù)據(jù)進(jìn)行替換;Smooth選項卡各選項的功能:三、擬合工具箱.Originaldataset用于挑選需要擬合的數(shù)據(jù)47三、擬合工具箱(ⅲ)Loess局部加權(quán)散點圖平滑數(shù)據(jù),采用線性最小二乘法和二階多項式擬合得到的數(shù)據(jù)進(jìn)行交換;(ⅳ)Savitzky-Golay采用未加權(quán)的線性最小二乘法過濾數(shù)據(jù),利用指定階數(shù)的多項式得到的數(shù)據(jù)進(jìn)行替換;(ⅴ)Span用于進(jìn)行平滑計算的數(shù)據(jù)點的數(shù)目;(ⅵ)Degree用于Savitzky-Golay方法擬合多項式的階數(shù)。Smooth各選項卡功能:三、擬合工具箱(ⅲ)Loess局部加權(quán)散點圖平滑數(shù)據(jù),采用線48三、擬合工具箱.Smootheddatasets對于所有平滑數(shù)據(jù)集進(jìn)行列表。可以增加平滑數(shù)據(jù)集,通過單擊Createsmootheddataset按鈕,可以創(chuàng)建經(jīng)過平滑的數(shù)據(jù)集。.View按鈕打開查看數(shù)據(jù)集的GUI,以散點圖方式和工作表方式查看數(shù)據(jù),可以選擇排除異常值的方法。.Rename用于重命名。.Delete可刪去數(shù)據(jù)組。.Savetoworkspace保存數(shù)據(jù)集。Smooth各選項卡功能:三、擬合工具箱.Smootheddatasets對于所49排除法是對數(shù)據(jù)中的異常值進(jìn)行排除。區(qū)間排除法是采用一定的區(qū)間去排除那些用于系統(tǒng)誤差導(dǎo)致偏離正常值的異常值。在曲線擬合工具中單擊Exclude按鈕,可以打開Exclude對話框排除法和區(qū)間排除法:三、擬合工具箱排除法是對數(shù)據(jù)中的異常值進(jìn)行排除。排除法和區(qū)間排除法:三、擬50三、擬合工具箱三、擬合工具箱51三、擬合工具箱Exclusionrulename指定分離規(guī)則的名稱Existingexclusionrules列表產(chǎn)生的文件名,當(dāng)你選擇一個文件名時,可以進(jìn)行如下操作:Copy復(fù)制分離規(guī)則的文件;Rename重命名;delete刪去一個文件;View以圖形的形式展示分離規(guī)則的文件。Selectdataset挑選需要操作的數(shù)據(jù)集;Excludegraphically允許你以圖形的形式去除異常值,排除個別的點用“×”標(biāo)記。Excusion選項:三、擬合工具箱Exclusionrulename指定分離52三、擬合工具箱Checktoexcludepoint挑選個別的點進(jìn)行排除,可以通過在數(shù)據(jù)表中打勾來選擇要排除的數(shù)據(jù)。ExcludeSections選定區(qū)域排除數(shù)據(jù):

ExcludeX選擇預(yù)測數(shù)據(jù)X要排除的數(shù)據(jù)范圍;

ExcludeY選擇響應(yīng)數(shù)據(jù)Y要排除的數(shù)據(jù)范圍。Exclusion選項:三、擬合工具箱Checktoexcludepoint53其他的預(yù)處理方法不便通過曲線擬合工具箱來完成,主要包括兩部分:響應(yīng)數(shù)據(jù)的轉(zhuǎn)換和去除無窮大、缺失值和異常值。響應(yīng)數(shù)據(jù)的轉(zhuǎn)換一般包括對數(shù)轉(zhuǎn)換、指數(shù)轉(zhuǎn)換,用這些轉(zhuǎn)換可以使非線性的模型線性化,便于曲線擬合。變量的轉(zhuǎn)換一般在命令行里實現(xiàn),然后把轉(zhuǎn)換后的數(shù)據(jù)輸入曲線擬合工具箱,進(jìn)行擬合。其他預(yù)處理方法:三、擬合工具箱其他的預(yù)處理方法不便通過曲線擬合工具箱其他預(yù)處理方法:三、擬54三、擬合工具箱無窮大、不定值在曲線擬合中可以忽略,如果想把他們從數(shù)據(jù)集中刪除,可以用isinf和isnan置換無窮大值和缺失值。其他預(yù)處理:三、擬合工具箱無窮大、不定值在曲線擬合中可以忽略,如其他預(yù)處55第一步:在命令行鍵入Cftool打開curvefittingtool對話框;第二步:在curvefittingtool對話框中單擊Data按鈕打開data對話框指定要分析的(預(yù)先存在工作區(qū)間)數(shù)據(jù);第三步:在curvefittingtool對話框中單擊fitting按鈕打開fitting對話框,進(jìn)行設(shè)置,實現(xiàn)曲線擬合。曲線的參數(shù)擬合:三、擬合工具箱第一步:在命令行鍵入Cftool打開曲線的參數(shù)擬合:三、擬合56三、擬合工具箱三、擬合工具箱57包括兩個面板:“FitEditor”面板和“TabeofFits”面板。(1)Fiteditor選擇擬合的文件名、數(shù)據(jù)集,選擇排除數(shù)據(jù)的文件,比較數(shù)據(jù)擬合的各種方法,包括庫函數(shù)、自定義的擬合模型和擬合參數(shù)的選擇。(2)TableofFits同時列出所有的擬合結(jié)果。Fitting對話框:三、擬合工具箱包括兩個面板:“FitEditor”面板和“TabeFi58Newfit和Copyfit按鈕:開始進(jìn)行曲線擬合是,單擊Newfit按鈕,它采用默認(rèn)的線性多項式擬合數(shù)據(jù)。在原有的擬合形式上,選擇不同的曲線擬合方法,可以用Copyfit按鈕。Fitname選項為當(dāng)前擬合曲線的名字。單擊Newfit按鈕時系統(tǒng)會產(chǎn)生默認(rèn)的文件名。Dataset選項為當(dāng)前的數(shù)據(jù)集。Exclusionrule排除異常值的文件名,在數(shù)據(jù)預(yù)處理前建立的文件名。Fitting對話框:三、擬合工具箱Newfit和Copyfit按鈕:開始進(jìn)行曲線擬合59三、擬合工具箱CenterandscaleXdata可對觀測數(shù)據(jù)進(jìn)行中心化和離散化處理。Typeoffit擬合的類型,包括參數(shù)擬合和非參數(shù)擬合兩種。具體包括:(1)CustomEquations自定義擬合的線性或非線性方程;(2)Newequation使用CustomEquations按鈕前,必須單擊Newequation按鈕選擇合適的方程;Fitting對話框:三、擬合工具箱CenterandscaleXdata60三、擬合工具箱(3)Exponential指數(shù)擬合包括兩種形式:

y=a*exp(b*x)y=a*exp(b*x)+c*exp(d*x)(4)Fourier傅立葉擬合,正弦和余弦之和(共8個多項式)

Fitting對話框:三、擬合工具箱(3)Exponential指數(shù)擬合包括兩種形61三、擬合工具箱(5)Gaussian高斯法,包括8個公式:(6)Interpolant內(nèi)插法,包括線性內(nèi)插、最近鄰內(nèi)插、三次樣條內(nèi)插和shape-preserving內(nèi)插;(7)Polynomial多項式,從一次到九次;三、擬合工具箱(5)Gaussian高斯法,包括8個公式:62三、擬合工具箱(8)Rational有理擬合,兩個多項式之比,分子與分母都是多項式;(9)Power指數(shù)擬合,包括兩種形式:

y=a*x^by=a*x^b+c(10)Smoothingspline平滑樣條擬合,默認(rèn)的平滑參數(shù)由擬合的數(shù)據(jù)集來決定,參數(shù)是0產(chǎn)生一個分段的線性多項式擬合,參數(shù)是1產(chǎn)生一個分段三次多項式擬合;三、擬合工具箱(8)Rational有理擬合,兩個多項式之比63三、擬合工具箱(11)SumofSinFunctions正弦函數(shù)的和,采用以下8個公式:

a1*sin(b1*x+c1)…a1*sin(b1*x+c1)+…+a8*sin(b8*x+c8)(12)Weibull兩個參數(shù)的Weibull分布,表達(dá)式如下:Y=a*b*x^(b-1)*exp(-a*x^b)三、擬合工具箱(11)SumofSinFunction64三、擬合工具箱Fitoptions包括一些擬合方法,如線性擬合、非線性擬合,以及其他選項;單擊Apply按鈕:采用上述所選各種方法進(jìn)行擬合;單擊Immediateapply按鈕,在選擇一個擬合形式后立即輸出結(jié)果并存儲;Results羅列進(jìn)行擬合的各種參數(shù):(1)SSE-sumofsquaresduetoerror誤差平方和,越接近0曲線的擬合效果越好(2)R-square越接近1,曲線的擬合效果越好三、擬合工具箱Fitoptions包括一些擬合方法,如線65三、擬合工具箱(3)DegreeofFreedomAdjustedR-Square調(diào)整自由度以后的殘差的平方,數(shù)值越接近1,曲線的擬合效果越好(4)RootMeanSquareError根的均方誤差Tableoffits擬合曲線的列表,可以對每個列表做如下操作:Deletefit刪除所選的擬合曲線;Savetoworkspace儲存所有的擬合信息;Tableoptions選擇與擬合相聯(lián)系的信息。三、擬合工具箱(3)DegreeofFreedomAd66rand('state',0)%重置生成器到初始狀態(tài)x=[1:0.1:39:0.1:10]';c=[2.5-0.51.3-0.1];y=c(1)+c(2)*x+c(3)*x.^2+c(4)*x.^3+(rand(size(x))-0.5);cftool(x,y);建立一個M文件,并運行上述文件,打開曲線擬合工具例題用三次和五次多項式擬合:三、擬合工具箱rand('state',0)%重置生成器到初始狀態(tài)例題用67三、擬合工具箱三、擬合工具箱68三、擬合工具箱點擊fitting按鈕—newfit—cubicpolynomial--apply三、擬合工具箱點擊fitting按鈕—newfit—cub69LinearmodelPoly3:f(x)=p1*x^3+p2*x^2+p3*x+p4Coefficients(with95%confidencebounds):p1=-0.09837(-0.1095,-0.08729)p2=1.275(1.113,1.437)p3=-0.4351(-1.092,0.2222)p4=2.56(1.787,3.332)Goodnessoffit:SSE:2.587R-square:0.9993AdjustedR-square:0.9993RMSE:0.3039結(jié)果:三、擬合工具箱LinearmodelPoly3:結(jié)果:三、擬合工具箱70LinearmodelPoly5:f(x)=p1*x^5+p2*x^4+p3*x^3+p4*x^2+p5*x+p6Coefficients(with95%confidencebounds):p1=0.001389(-0.003589,0.006367)p2=-0.03441(-0.1601,0.09125)p3=0.1934(-0.9131,1.3)p4=0.2733(-3.856,4.402)p5=1.013(-5.785,7.811)p6=1.835(-2.167,5.837)Goodnessoffit:SSE:2.552R-square:0.9993AdjustedR-square:0.9992RMSE:0.3133結(jié)果:三、擬合工具箱LinearmodelPoly5:結(jié)果:三、擬合工具箱71擬合圖形:三、擬合工具箱擬合圖形:三、擬合工具箱72練習(xí):hahn1.m是matlab自帶,描述銅的熱膨脹與熱力學(xué)溫度的相關(guān)性,包括兩個向量temp與thermex。loadhahn1cftool(temp,thermex)

三、擬合工具箱練習(xí):hahn1.m是matlab自帶,描述銅的熱膨脹與熱力73有時我們對擬合參數(shù)的提取或解釋不感興趣,只想得到一個平滑的通過各數(shù)據(jù)點的曲線,這種擬合曲線的形式稱之為非參數(shù)擬合。非參數(shù)擬合的方法包括(1)插值法Interpolants(2)平滑樣條內(nèi)插法Smoothingspline

非參數(shù)插值:三、擬合工具箱有時我們對擬合參數(shù)的提取或解釋不感非參數(shù)插值:三74在已知數(shù)據(jù)點之間估計數(shù)值的過程,包括Linear線性內(nèi)插,在每一隊數(shù)據(jù)之間用不同的線性多項式擬合;Nearestneighbor最近鄰內(nèi)插,內(nèi)插點在最相鄰的數(shù)據(jù)點之間;Cubicspline三次樣條內(nèi)插,在每一隊數(shù)據(jù)之間用不同的三次多項式擬合;Shape-preserving分段三次艾爾米特內(nèi)插.內(nèi)插法:三、擬合工具箱在已知數(shù)據(jù)點之間估計數(shù)值的過程,包括內(nèi)插法:三、擬合工具箱75是對雜亂無章的數(shù)據(jù)進(jìn)行平滑處理,可以用平滑數(shù)據(jù)的方法來擬合,平滑的方法在數(shù)據(jù)的預(yù)處理中已經(jīng)介紹。平滑樣條內(nèi)插法:三、擬合工具箱是對雜亂無章的數(shù)據(jù)進(jìn)行平滑處理,可以用平滑數(shù)據(jù)的方法來擬合,76loadcarbon12alphacftool(counts,angle)fit1Fitting—typeoffit—

Interpolant--Nearestneighborfit2Fitting—typeoffit—

Interpolant--Shape-preserving例:用內(nèi)插法擬合carbon12alpha.mat數(shù)據(jù):三、擬合工具箱loadcarbon12alpha例:用內(nèi)插法擬合ca77三、擬合工具箱三、擬合工具箱78三、擬合工具箱三、擬合工具箱79rand('state',0);x=(4*pi)*[01rand(1,25)];y=sin(x)+.2*(rand(size(x))-.5);cftool(x,y)例題:用三次樣條內(nèi)插和集中平滑樣條內(nèi)插法擬合:三、擬合工具箱rand('state',0);例題:用三次樣條內(nèi)插和集80三、擬合工具箱三、擬合工具箱81三、擬合工具箱三、擬合工具箱82三、擬合工具箱三、擬合工具箱83三、擬合工具箱三、擬合工具箱84Matlab還提供了一個方便簡捷的擬合界面。它具有擬合快速,操作簡便的有時,但擬合方法較少。使用步驟:(1)導(dǎo)入數(shù)據(jù),并畫圖;(2)在tool菜單中單擊BasicFitting對話框基本擬合界面:三、擬合工具箱Matlab還提供了一個方便簡捷的擬合界面。它具有擬合快速,85loadcensusplot(cdate,pop,'ro')例題:用基本擬合界面擬合census.mat:三、擬合工具箱loadcensus例題:用基本擬合界面擬合census.86三、擬合工具箱三、擬合工具箱87三、擬合工具箱三、擬合工具箱88三、擬合工具箱三、擬合工具箱89 謝謝大家! 謝謝大家!90計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合第八章MATLAB數(shù)據(jù)處理教學(xué)目標(biāo)介紹MATLAB數(shù)據(jù)插值和數(shù)據(jù)擬合學(xué)習(xí)要求熟練掌握MATLAB數(shù)據(jù)插值和數(shù)據(jù)擬合。計算機(jī)仿真技術(shù)MATLAB數(shù)據(jù)處理插值擬合計算機(jī)仿真技術(shù)MA91第八章MATLAB數(shù)據(jù)處理教學(xué)目標(biāo)介紹MATLAB數(shù)據(jù)插值和數(shù)據(jù)擬合學(xué)習(xí)要求熟練掌握MATLAB數(shù)據(jù)插值和數(shù)據(jù)擬合。第八章MATLAB數(shù)據(jù)處理教學(xué)目標(biāo)學(xué)習(xí)要求92一、數(shù)據(jù)擬合什么叫數(shù)據(jù)擬合數(shù)據(jù)擬合是求一個簡單的函數(shù),例如是一個低次多項式,不要求通過已知的這些點,而是要求在整體上“盡量好”的逼近原函數(shù)。Matlab常用擬合方法:多項式擬合(polyfit),非線性曲線擬合(lsqcurvefit)一、數(shù)據(jù)擬合什么叫數(shù)據(jù)擬合93一、數(shù)據(jù)擬合多項式曲線擬合:polyfit.函數(shù)名稱:polyfit格式:p=polyfit(x,y,m),x,y為已知數(shù)據(jù)點向量,分別表示橫,縱坐標(biāo),m為擬合多項式的次數(shù),結(jié)果返回m次擬合多項式系數(shù),從高次到低次存放在向量p中.y0=polyval(p,x0),可求得多項式在x0處的值y0.一、數(shù)據(jù)擬合多項式曲線擬合:polyfit.94一、數(shù)據(jù)擬合例題1:已知觀測數(shù)據(jù)點如表所示,用3次和6次多項式擬合xy0-0.4470.11.9780.23.280.36.160.47.080.57.340.67.660.79.560.89.480.99.3111.2一、數(shù)據(jù)擬合例題1:已知觀測數(shù)據(jù)點如表所示,用3次和6次多項95一、數(shù)據(jù)擬合Matlab代碼:x=0:0.1:1;y=[-.447,1.978,3.28,6.16,7.08,7.34,7.66,9.56,9.48,9.3,11.2]plot(x,y,'k.','markersize',25);axis([01.3-216])p3=polyfit(x,y,3);p6=polyfit(x,y,6);t=0:0.1:1.2;s=polyval(p3,t);s1=polyval(p6,t);holdon;plot(t,s,'r-','linewidth',2);plot(t,s1,'b--','linewidth',2);gridon一、數(shù)據(jù)擬合Matlab代碼:96一、數(shù)據(jù)擬合例題2:用切削機(jī)床進(jìn)行金屬品加工時,為了適當(dāng)?shù)卣{(diào)整機(jī)床,需要測定刀具的磨損速度.在一定的時間測量刀具的厚度,得數(shù)據(jù)如表所示:切削時間t/h030.0129.1228.4328.1428.0527.7627.5727.2827.0刀具厚度y/cm切削時間t/h926.81026.51126.31226.11325.71425.31524.81624.0刀具厚度y/cm一、數(shù)據(jù)擬合例題2:用切削機(jī)床進(jìn)行金屬品加工時,為了適當(dāng)?shù)?7一、數(shù)據(jù)擬合Matlab代碼:t=[0:1:16];y=[30.029.128.428.128.027.727.527.227.026.826.526.326.125.725.324.824.0];plot(t,y,'*');holdona=polyfit(t,y,5);y1=polyval(a,t);plot(t,y1),holdoff;一、數(shù)據(jù)擬合Matlab代碼:98一、數(shù)據(jù)擬合例題3:一個15.4cm×30.48cm的混凝土柱在加壓實驗中的應(yīng)力-應(yīng)變關(guān)系測試點的數(shù)據(jù)如表所示已知應(yīng)力-應(yīng)變關(guān)系可以用一條指數(shù)曲線來描述,即假設(shè)式中,表示應(yīng)力,單位是N/m2;表示應(yīng)變,求系數(shù)1.552.472.933.032.89一、數(shù)據(jù)擬合例題3:一個15.4cm×30.48cm的混凝土99一、數(shù)據(jù)擬合求解:1)要使用多項式擬合,因此需要將表達(dá)式轉(zhuǎn)換為多項式形式化為k1,k2

的線性函數(shù).于是,令即一、數(shù)據(jù)擬合求解:化為k1,k2的線性函數(shù).于是,令即100一、數(shù)據(jù)擬合matlab代碼:x=[500*1.0e-61000*1.0e-61500*1.0e-62000*1.0e-62375*1.0e-6];y=[3.103*1.0e+32.465*1.0e+31.953*1.0e+31.517*1.0e+31.219*1.0e+3];z=log(y);a=polyfit(x,z,1);k1=exp(a(2));w=[1.552.472.933.032.89]plot(x,w,'*')y1=exp(a(2))*x.*exp(a(1)*x);plot(x,w,'*',x,y1,'r-')一、數(shù)據(jù)擬合matlab代碼:101已知應(yīng)力-應(yīng)變關(guān)系可以用一條指數(shù)曲線來描述,即假設(shè)式中,表示應(yīng)力,單位是N/m2;表示應(yīng)變.擬合曲線為:令則求得于是一、數(shù)據(jù)擬合已知應(yīng)力-應(yīng)變關(guān)系可以用一條指數(shù)曲線來描述,即假設(shè)式中,102在實際應(yīng)用中常見的擬合曲線有:直線多項式一般n=2,3,不宜過高.雙曲線(一支)指數(shù)曲線一、數(shù)據(jù)擬合在實際應(yīng)用中常見的擬合曲線有:直線多項式一般n=2,3,1032.非線性曲線擬合:lsqcurvefit.功能:x=lsqcurvefit(fun,x0,xdata,ydata)[x,resnorm]=lsqcurvefit(fun,x0,xdata,ydata)根據(jù)給定的數(shù)據(jù)xdata,ydata(對應(yīng)點的橫,縱坐標(biāo)),按函數(shù)文件fun給定的函數(shù),以x0為初值作最小二乘擬合,返回函數(shù)fun中的系數(shù)向量x和殘差的平方和resnorm.一、數(shù)據(jù)擬合2.非線性曲線擬合:lsqcurvefit.功能:x=104例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.23.810.34.50.45.180.560.67.050.78.560.89.690.911.25113.17求三個參數(shù)a,b,c的值,使得曲線f(x)=aex+bx2+cx3

與已知數(shù)據(jù)點在最小二乘意義上充分接近.首先編寫存儲擬合函數(shù)的函數(shù)文件.functionf=nihehanshu(x,xdata)f=x(1)*exp(xdata)+x(2)*xdata.^2+x(3)*xdata.^3保存為文件nihehanshu.m一、數(shù)據(jù)擬合例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.105例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.23.810.34.50.45.180.560.67.050.78.560.89.690.911.25113.17求三個參數(shù)a,b,c的值,使得曲線f(x)=aex+bx2+cx3

與已知數(shù)據(jù)點在最小二乘意義上充分接近.編寫下面的程序調(diào)用擬合函數(shù).xdata=0:0.1:1;ydata=[3.1,3.27,3.81,4.5,5.18,6,7.05,8.56,9.69,11.25,13.17];x0=[1,1,1];[x,resnorm]=lsqcurvefit(@nihehanshu,x0,xdata,ydata)一、數(shù)據(jù)擬合例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.106編寫下面的程序調(diào)用擬合函數(shù).xdata=0:0.1:1;ydata=[3.1,3.27,3.81,4.5,5.18,6,7.05,8.56,9.69,11.25,13.17];x0=[0,0,0];[x,resnorm]=lsqcurvefit(@nihehanshu,x0,xdata,ydata)程序運行后顯示x=3.00224.03040.9404resnorm=0.0912一、數(shù)據(jù)擬合編寫下面的程序調(diào)用擬合函數(shù).xdata=0:0.1:1;程序107例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.23.810.34.50.45.180.560.67.050.78.560.89.690.911.25113.17求三個參數(shù)a,b,c的值,使得曲線f(x)=aex+bx2+cx3

與已知數(shù)據(jù)點在最小二乘意義上充分接近.說明:最小二乘意義上的最佳擬合函數(shù)為f(x)=3ex+4.03x2+0.94x3.此時的殘差是:0.0912.一、數(shù)據(jù)擬合例4已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.108f(x)=3ex+4.03x2+0.94x3.擬合函數(shù)為:一、數(shù)據(jù)擬合f(x)=3ex+4.03x2+0.94x3.擬合109練習(xí):1.已知觀測數(shù)據(jù)點如表所示xy03.10.13.270.23.810.34.50.45.180.560.67.050.78.560.89.690.911.25113.17求用三次多項式進(jìn)行擬合的曲線方程.2.已知觀測數(shù)據(jù)點如表所示xy1.617.72.7491.313.14.1189.43.6110.82.334.50.644.9409.13652.436.9求a,b,c的值,使得曲線f(x)=aex+bsinx+clnx與已知數(shù)據(jù)點在最小二乘意義上充分接近.一、數(shù)據(jù)擬合練習(xí):1.已知觀測數(shù)據(jù)點如表所示xy03.10.13.27110二、數(shù)據(jù)插值什么叫數(shù)據(jù)插值用插值的方法對一函數(shù)進(jìn)行近似,要求所得到的插值多項式經(jīng)過已知插值節(jié)點;在n比較大的情況下,插值多項式往往是高次多項式,這也就容易出現(xiàn)振蕩現(xiàn)象(龍格現(xiàn)象),即雖然在插值節(jié)點上沒有誤差,但在插值節(jié)點之外插值誤差變得很大,從“整體”上看,插值逼近效果將變得“很差”常用插值方法:分段線性插值、三次樣條曲線插值二、數(shù)據(jù)插值什么叫數(shù)據(jù)插值111已知n+1個節(jié)點其中互不相同,不妨設(shè)求任一插值點處的插值節(jié)點可視為由產(chǎn)生,g表達(dá)式復(fù)雜,甚至無表達(dá)式二、數(shù)據(jù)插值已知n+1個節(jié)點其中互不相同,不妨設(shè)求任一插值點處的插值1121.分段線性插值xjxj-1xj+1x0xn實用插值方法機(jī)翼下輪廓線2.三次樣條插值細(xì)木條:樣條二、數(shù)據(jù)插值1.分段線性插值xjxj-1xj+1x0xn實用113輸入:節(jié)點x0,y0,插值點x(均為數(shù)組,長度自定義);輸出:插值y(與x同長度數(shù)組).1.分段線性插值:y=interp1(x0,y0,x)y=interp1(x0,y0,x,’linear’)2.三次樣條插值:y=interp1(x0,y0,x,’spline’)或y=spline(x0,y0,x)二、數(shù)據(jù)插值輸入:節(jié)點x0,y0,插值點x(均為數(shù)組,長度自定義114例5對在[-1,1]上,用n=20的等距分點進(jìn)行分段線性插值,繪制f(x)及插值函數(shù)的圖形.解在命令窗口輸入:x=-1:0.1:1y=1./(1+9*x.^2)xi=-1:0.1:1yi=interp1(x,y,xi)plot(x,y,'r-',xi,yi,'*')二、數(shù)據(jù)插值第十次課到此例5對在[-115例6對在[-5,5]上,用n=11個等距分點作分段線性插值和三次樣條插值,用m=21個插值點作圖,比較結(jié)果.解在命令窗口輸入:n=11,m=21x=-5:10/(m-1):5y=1./(1+x.^2)z=0*xx0=-5:10/(n-1):5y0=1./(1+x0.^2)y1=interp1(x0,y0,x)y2=interp1(x0,y0,x,'spline')[x'y'y1'y2']plot(x,z,'r',x,y,'k:',x,y1,'b',x,y2,'g')gtext('Piece.-linear.'),gtext('Spline'),gtext('y=1/(1+x^2)')二、數(shù)據(jù)插值例6對在[-5,511601.00001.00001.00000.50000.80000.75000.82051.00000.50000.50000.50001.50000.30770.35000.29732.00000.20000.20000.20002.50000.13790.15000.14013.00000.10000.10000.10003.50000.07550.07940.07454.00000.05880.05880.05884.50000.04710.04860.04845.00000.03850.03850.0385例6對在[-5,5]上,用n=11個等距分點作分段線性插值和三次樣條插值,用m=21個插值點作圖,比較結(jié)果.xyy1y2二、數(shù)據(jù)插值01.00001.117解在命令窗口輸入:例7在一天24h內(nèi),從零點開始每間隔2h測得的環(huán)境溫度為12,9,9,10,18,24,28,27,25,20,18,15,13二、數(shù)據(jù)插值(單位:)推測在每1s時的溫度.并描繪溫度曲線.t=0:2:24T=[129910182428272520181513]plot(t,T,'*')ti=0:1/3600:24T1i=interp1(t,T,ti)plot(t,T,'*',ti,T1i,'r-')T2i=interp1(t,T,ti,'spline')plot(t,T,'*',ti,T1i,'r-',ti,T2i,'g-')解在命令窗口輸入:例7在一天24h內(nèi),從零點開始118例8在飛機(jī)的機(jī)翼加工時,由于機(jī)翼尺寸很大,通常在圖紙上只能標(biāo)出部分關(guān)鍵點的數(shù)據(jù).某型號飛機(jī)的機(jī)翼上緣輪廓線的部分?jǐn)?shù)據(jù)如下:x04.749.051938577695114133y05.238.111.9716.1517.116.3414.6312.166.69x152171190y7.033.990二、數(shù)據(jù)插值例8在飛機(jī)的機(jī)翼加工時,由于機(jī)翼尺寸很大,通常在圖119例8在飛機(jī)的機(jī)翼加工時,由于機(jī)翼尺寸很大,通常在圖紙上只能標(biāo)出部分關(guān)鍵點的數(shù)據(jù).某型號飛機(jī)的機(jī)翼上緣輪廓線的部分?jǐn)?shù)據(jù)如下:x=[04.749.051938577695114133152171190]y=[05.238.111.9716.1517.116.3414.6312.169.697.033.990]xi=[0:0.001:190]yi=interp1(x,y,xi,'spline')plot(xi,yi)二、數(shù)據(jù)插值例8在飛機(jī)的機(jī)翼加工時,由于機(jī)翼尺寸很大,通常在圖120例9天文學(xué)家在1914年8月份的7次觀測中,測得地球與金星之間距離(單位:m),并取其常用對數(shù)值與日期的一組歷史數(shù)據(jù)如下所示,試推斷何時金星與地球的距離(單位:m)的對數(shù)值為9.9352.日期18202224262830距離對數(shù)9.96189.95449.94689.93919.93129.92329.9150解由于對數(shù)值9.9352位于24和26兩天所對應(yīng)的對數(shù)值之間,所以對上述數(shù)據(jù)用三次樣條插值加細(xì)為步長為1的數(shù)據(jù):二、數(shù)據(jù)插值例9天文學(xué)家在1914年8月份的7次觀測中,測得地球與121解由于對數(shù)值9.9352位于24和26兩天所對應(yīng)的對數(shù)值之間,所以對上述數(shù)據(jù)用三次樣條插值加細(xì)為步長為1的數(shù)據(jù):x=[18:2:30]y=[9.96189.95449.94689.93919.93129.92329.9150]xi=[18:1:30]yi=interp1(x,y,xi,'spline')A=[xi;yi]二、數(shù)據(jù)插值解由于對數(shù)值9.9352位于24和26兩天所122練習(xí):1.設(shè)在區(qū)間[-2,2]上用10等分點作為節(jié)點,分別用三種插值方法:二、數(shù)據(jù)插值(1)計算并輸出在該區(qū)間的20等分點的函數(shù)值.(2)輸出這個函數(shù)及兩個插值函數(shù)的圖形.(3)對輸出的數(shù)據(jù)和圖形進(jìn)行分析.練習(xí):1.設(shè)在區(qū)間123練習(xí):2.已知某型號飛機(jī)的機(jī)翼斷面下緣輪廓線上的部分?jǐn)?shù)據(jù)如表所示:假設(shè)需要得到x

坐標(biāo)每改變0.1時的y

坐標(biāo),分別用兩種插值方法對機(jī)翼斷面下緣輪廓線上的部分?jǐn)?shù)據(jù)加細(xì),并作出插值函數(shù)的圖形.xy0031.251.772.092.1112.0121.8131.2141.0151.6二、數(shù)據(jù)插值練習(xí):2.已知某型號飛機(jī)的機(jī)翼斷面下緣輪廓線上的部分?jǐn)?shù)據(jù)如124(1)打開曲線擬合工具界面通過cftool命令打開曲線擬合工具界面三、擬合工具箱(1)打開曲線擬合工具界面三、擬合工具箱125Data按鈕:可輸出、查看和平滑數(shù)據(jù);Fitting按鈕:可擬合數(shù)據(jù)、比較擬合曲線和數(shù)據(jù)集;Exclude按鈕:可以從擬合曲線中排除特殊的數(shù)據(jù)點;Ploting按鈕:在選定區(qū)間后,單擊按鈕,可以顯示擬合曲線和數(shù)據(jù)集;Analysis按鈕:可以做內(nèi)插法、外推法、微分或積分?jǐn)M合。三、擬合工具箱五個按鈕Data按鈕:可輸出、查看和平滑數(shù)據(jù);三、擬合工具箱五個按鈕126在輸入數(shù)據(jù)之前,數(shù)據(jù)變量必須存在于matlab的工作區(qū)間。可以通過load命令輸入變量。單擊曲線擬合工具界面中的Data按鈕,打開Data對話框,在對話框中進(jìn)行設(shè)置,可以輸入數(shù)據(jù)。注意:三、擬合工具箱在輸入數(shù)據(jù)之前,數(shù)據(jù)變量必須存在于注意:三、擬合127包括兩個選項卡:DataSets和Smooth.DataSets選項卡:.Importworkspacevectors把向量輸入工作區(qū),要注意的是變量必須具有相同的維數(shù),無窮大的值和不定值被忽略。Xdata用于選擇觀測數(shù)據(jù)Ydata用于選擇X的響應(yīng)數(shù)據(jù)Weight用于選擇權(quán)重,與響應(yīng)數(shù)據(jù)相聯(lián)系的向量,如果沒選擇,默認(rèn)值為1.Data對話框:三、擬合工具箱包括兩個選項卡:DataSets和Smooth.Da128三、擬合工具箱.Preview對所選向量進(jìn)行圖形化預(yù)覽.Datasetname設(shè)置數(shù)據(jù)集的名稱。工具箱可以隨即產(chǎn)生唯一的文件名,但用戶可以重命名。.Datasets選項以列表的形式顯示所有擬合的數(shù)據(jù)集。當(dāng)選擇一個數(shù)據(jù)集時,可以對它做如下操作:

.View查看數(shù)據(jù)集,以圖標(biāo)形式和列表形式,可以選擇方法排除異常值;

.Rename重命名.Delete刪除數(shù)據(jù)組Data對話框:三、擬合工具箱.Preview對所選向量進(jìn)行圖形化預(yù)覽Da129census有兩個變量:cdate和pop。

cdate是一個年向量,包括1790-1990年,pop是對應(yīng)年份的美國人口。whos-filecensusNameSizeBytesClassAttributescdate21x1168doublepop21x1168doubleloadcensuscftool(cdate,pop)例題,用matlab自帶的文件census擬合:三、擬合工具箱census有兩個變量:cdate和pop。例題,用130三、擬合工具箱散點圖三、擬合工

溫馨提示

  • 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

提交評論