基于Matlab的曲線擬合_第1頁(yè)
基于Matlab的曲線擬合_第2頁(yè)
基于Matlab的曲線擬合_第3頁(yè)
基于Matlab的曲線擬合_第4頁(yè)
基于Matlab的曲線擬合_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、基于Matlab的曲線擬合摘要:科學(xué)研究中經(jīng)常要對(duì)得到的實(shí)驗(yàn)數(shù)據(jù)進(jìn)行分析,通過(guò)研究物理量之間的函數(shù)關(guān)系,探索事物之間的聯(lián)系、規(guī)律,或做出相應(yīng)的預(yù)測(cè)。這些分析都離不開(kāi)擬合,擬合的方法有很多種,最常用的曲線擬合方法是最小二乘法。Matlab是一個(gè)很強(qiáng)大的數(shù)值分析軟件,能幫助我們快速、準(zhǔn)確地進(jìn)行曲線擬合,并能直觀的顯示出結(jié)果。本文除了介紹最小二乘法的原理之外,還通過(guò)一個(gè)實(shí)例,表述了如何用Matlab自帶函數(shù)lsqcurvefit()及工具箱cftool進(jìn)行曲線擬合,并分別給出了相關(guān)的結(jié)果圖。關(guān)鍵字:曲線擬合,最小二乘法,Matlab,lsqcurvefit,cftool(Curve Fitting

2、Tool)前言在科學(xué)研究實(shí)驗(yàn)與工程計(jì)算中,經(jīng)常要從一組實(shí)際觀測(cè)數(shù)據(jù)點(diǎn)集(x,y)(i=0,1,2,n)出發(fā),去尋找變量x與y的函數(shù)關(guān)系式,即y = f(x)。絕大多數(shù)情況下,函數(shù)關(guān)系特別復(fù)雜,通過(guò)離散的觀測(cè)點(diǎn)很難通過(guò)理論計(jì)算推斷出自變量與對(duì)應(yīng)因變量的函數(shù)表達(dá)式,不利于進(jìn)一步的數(shù)據(jù)分析。這時(shí)候就要采用曲線擬合的方法,來(lái)近似求解變量間的最佳函數(shù)關(guān)系,目的是找到一條光滑曲線,使它在某種準(zhǔn)則下最佳的擬合數(shù)據(jù)并最大程度地接近實(shí)際理論曲線。隨著科學(xué)技術(shù)的發(fā)展,曲線擬合在數(shù)據(jù)分析及尋找事物規(guī)律、預(yù)測(cè)等應(yīng)用中具有越來(lái)越重要的作用。曲線擬合的方法有很多,大致可以分為插值法和逼近法。考慮到一些實(shí)驗(yàn)儀器的精度要求與

3、計(jì)算機(jī)的數(shù)據(jù)運(yùn)算、存儲(chǔ)能力或其他條件限制,可采用插值法增加數(shù)據(jù)。插值法可采用拉格朗日插值、牛頓插值、樣條插值等,逼近法有最小二乘法、切比雪夫法等。在科學(xué)研究中,最常用的曲線擬合方法是最小二乘法。MATLAB是美國(guó)MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于算法開(kāi)發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計(jì)算的高級(jí)技術(shù)計(jì)算語(yǔ)言和交互式環(huán)境,具有很強(qiáng)大的圖形處理能力及計(jì)算處理能力、編譯語(yǔ)言簡(jiǎn)單易用、模塊集合工具箱應(yīng)用廣泛、可開(kāi)發(fā)用戶界面等優(yōu)點(diǎn),已成為我們對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行研究分析的首選工具。對(duì)于數(shù)據(jù)的曲線擬合問(wèn)題,Matlab為用戶提供了多種線性與非線性擬合方法,包括擬合函數(shù)與工具箱,用戶還能根據(jù)自己的需要進(jìn)

4、行編程。利用Matlab能快速、準(zhǔn)確地得到曲線擬合結(jié)果。最小二乘法在許多科學(xué)研究實(shí)驗(yàn)中,往往要根據(jù)一組得到的確定實(shí)驗(yàn)數(shù)據(jù)(x,y)(i=0,1,2,m),求自變量x與因變量y的函數(shù)關(guān)系式y(tǒng) = S(x;a,a, a,a)(n<m),這時(shí)a為待定參數(shù),由于觀測(cè)數(shù)據(jù)存在誤差,且待定參數(shù)a的數(shù)量比給定數(shù)據(jù)點(diǎn)的數(shù)量少(即n<m),這類問(wèn)題不要求y =S(x)= S(x;a,a, a,a)通過(guò)點(diǎn)(x,y)(i=0,1,2,m),只要求在給定點(diǎn)x上的誤差=f(x)- y的平方和最小。設(shè)(x), (x),(x)是區(qū)間Ca,b上線性無(wú)關(guān)函數(shù)族,在=span(x), (x),(x)中找到一函數(shù)S(x

5、),使誤差平方和|= = =其中s(x)= a(x) + a(x) + + a(x) (n<m)。這就是最一般的小二乘逼近,得到的擬合曲線為s(x),用幾何語(yǔ)言說(shuō),就稱為曲線擬合的最小二乘法。曲線擬合的Matlab實(shí)現(xiàn)例:已知數(shù)據(jù)如下表1表1 待擬合數(shù)據(jù)x0.10.40.50.70.80.9y0.610.920.991.521.472.03試確定擬合函數(shù)的系數(shù),并畫(huà)出擬合曲線。用Matlab求解曲線擬合問(wèn)題的方法有很多種,可以直接調(diào)用Matlab函數(shù),也可以按照算法進(jìn)行編程,最簡(jiǎn)單的方法便是使用Matlab為用戶提供的工具箱。下面只介紹用Matlab函數(shù)與工具箱求解上例。方法一:用lsq

6、curvefit函數(shù)實(shí)現(xiàn)曲線擬合Matlab為用戶提供了lsqcurvefit函數(shù)實(shí)現(xiàn)最小二乘擬合,調(diào)用格式如下:x=lsqcurvefit(fun,x0,xdata,ydata);fun為擬合函數(shù),(xdata,ydata)為一組實(shí)驗(yàn)觀測(cè)數(shù)據(jù),滿足ydata = fun(xdata,x),以x0為初始點(diǎn)求解改數(shù)據(jù)擬合問(wèn)題。新建m文件,將待擬合函數(shù)寫(xiě)入,保存為cf.m:function f=cf(x,xdate)n=length(xdate);for i=1:n f(i)=x(1)+x(2)*xdate(i)+x(3)*sin(xdate(i)+x(4)*exp(xdate(i);end運(yùn)行以

7、下程序:clear all;xdata=0.1 0.4 0.5 0.7 0.8 0.9;ydata=0.61 0.92 0.99 1.52 1.47 2.03;x0=1 1 1 1'%初始點(diǎn)選為全1向量x=lsqcurvefit('qx',x0,xdata,ydata)plot(xdata,ydata,'ro');xi=0:0.01:1;y=cf(x,xi);grid on;hold on;plot(xi,y)xlabel('x')ylabel('y')title('lsqcurvefit函數(shù)曲線擬合')l

8、egend('原始數(shù)據(jù)點(diǎn)','擬合曲線')輸出結(jié)果:x = 7.0008 38.4868 -30.0778 -6.5485圖1為仿真結(jié)果圖,Matlab直觀的給出了擬合結(jié)果。即求得的擬合函數(shù)為f(x)= 。圖1使用lsqcurvefit函數(shù)擬合結(jié)果方法二:使用工具箱cftoolMatlab自帶很多功能強(qiáng)大的工具箱,直接使用就能方便高效得到結(jié)果。本例中我們可以調(diào)用曲線擬合工具箱cftool(Curve Fitting Tool)。圖2Curve Fitting Tool界面將原始數(shù)據(jù)輸入:xdata=0.1 0.4 0.5 0.7 0.8 0.9;ydata=0.

9、61 0.92 0.99 1.52 1.47 2.03;調(diào)用cftool,只要在命令窗口直接輸入cftool并回車即可:彈出工具箱界面如上圖2所示。在左上角的X data與Y data分別選定原始數(shù)據(jù)xdata與ydata,在右邊的下拉菜單中選擇Custom Equation,即用戶自定義,輸入a+b*x+c*sin(x)+d*exp(x),點(diǎn)擊Fit按鈕開(kāi)始擬合,得到如下圖3結(jié)果:圖3cftool 擬合結(jié)果由圖3可明顯看出用曲線擬合工具箱得到的結(jié)果與方法一編程實(shí)現(xiàn)的結(jié)果一致。參考文獻(xiàn)1 呂喜明,李明遠(yuǎn).最小二乘曲線擬合的Matlab實(shí)現(xiàn)J.內(nèi)蒙古民族大學(xué)學(xué)報(bào),2009,24(2):125-127.2 John H.Mathews,Kurtis

溫馨提示

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

評(píng)論

0/150

提交評(píng)論