第5講-matlab數(shù)據(jù)擬合課件_第1頁(yè)
第5講-matlab數(shù)據(jù)擬合課件_第2頁(yè)
第5講-matlab數(shù)據(jù)擬合課件_第3頁(yè)
第5講-matlab數(shù)據(jù)擬合課件_第4頁(yè)
第5講-matlab數(shù)據(jù)擬合課件_第5頁(yè)
已閱讀5頁(yè),還剩23頁(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、擬 合2.擬合的基本原理1. 擬合問(wèn)題引例1擬 合 問(wèn) 題 引 例 1溫度t(0C) 20.5 32.7 51.0 73.0 95.7電阻R() 765 826 873 942 1032已知熱敏電阻數(shù)據(jù):求600C時(shí)的電阻R。 設(shè) R=at+ba,b為待定系數(shù)2曲 線 擬 合 問(wèn) 題 的 提 法已知一組(二維)數(shù)據(jù),即平面上 n個(gè)點(diǎn)(xi,yi) i=1,n, 尋求一個(gè)函數(shù)(曲線)y=f(x), 使 f(x) 在某種準(zhǔn)則下與所有數(shù)據(jù)點(diǎn)最為接近,即曲線擬合得最好。 +xyy=f(x)(xi,yi)ii 為點(diǎn)(xi,yi) 與曲線 y=f(x) 的距離3擬合與插值的關(guān)系 函數(shù)插值與曲線擬合都是要根

2、據(jù)一組數(shù)據(jù)構(gòu)造一個(gè)函數(shù)作為近似,由于近似的要求不同,二者的數(shù)學(xué)方法上是完全不同的。 實(shí)例:下面數(shù)據(jù)是某次實(shí)驗(yàn)所得,希望得到X和 f之間的關(guān)系?問(wèn)題:給定一批數(shù)據(jù)點(diǎn),需確定滿足特定要求的曲線或曲面解決方案:若不要求曲線(面)通過(guò)所有數(shù)據(jù)點(diǎn),而是要求它反映對(duì)象整體的變化趨勢(shì),這就是數(shù)據(jù)擬合,又稱曲線擬合或曲面擬合。若要求所求曲線(面)通過(guò)所給所有數(shù)據(jù)點(diǎn),就是插值問(wèn)題;4最臨近插值、線性插值、樣條插值與曲線擬合結(jié)果:5用MATLAB解擬合問(wèn)題1、線性最小二乘擬合2、非線性最小二乘擬合6用MATLAB作線性最小二乘擬合1. 作多項(xiàng)式f(x)=a1xm+ +amx+am+1擬合,可利用已有程序:a=po

3、lyfit(x,y,m)2. 對(duì)超定方程組可得最小二乘意義下的解。,用3.多項(xiàng)式在x處的值y可用以下命令計(jì)算: y=polyval(a,x)輸出擬合多項(xiàng)式系數(shù)a=a1, am , am+1 (數(shù)組))輸入同長(zhǎng)度的數(shù)組X,Y擬合多項(xiàng)式次數(shù)7即要求 出二次多項(xiàng)式:中 的使得:例 對(duì)下面一組數(shù)據(jù)作二次多項(xiàng)式擬合81)輸入以下命令:x=0:0.1:1; y=-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2; R=(x.2) x ones(11,1); A=Ry解法1用解超定方程的方法2)計(jì)算結(jié)果: = -9.8108 20.1293 -

4、0.031791)輸入以下命令: x=0:0.1:1; y=-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2; A=polyfit(x,y,2) z=polyval(A,x); plot(x,y,k+,x,z,r) %作出數(shù)據(jù)點(diǎn)和擬合曲線的圖形2)計(jì)算結(jié)果: = -9.8108 20.1293 -0.0317解法2用多項(xiàng)式擬合的命令101. lsqcurvefit已知數(shù)據(jù)點(diǎn): xdata=(xdata1,xdata2,xdatan), ydata=(ydata1,ydata2,ydatan) 用MATLAB作非線性最小二乘擬合

5、Matlab的提供了兩個(gè)求非線性最小二乘擬合的函數(shù):lsqcurvefit和lsqnonlin。兩個(gè)命令都要先建立M-文件fun.m,在其中定義函數(shù)f(x),但兩者定義f(x)的方式是不同的,可參考例題. lsqcurvefit用以求含參量x(向量)的向量值函數(shù)F(x,xdata)=(F(x,xdata1),F(xiàn)(x,xdatan)T中的參變量x(向量),使得 11 輸入格式為: (1) x = lsqcurvefit (fun,x0,xdata,ydata); (2) x =lsqcurvefit (fun,x0,xdata,ydata,options); (3) x = lsqcurvefi

6、t (fun,x0,xdata,ydata,options,grad); (4) x, options = lsqcurvefit (fun,x0,xdata,ydata,); (5) x, options,funval = lsqcurvefit (fun,x0,xdata,ydata,); (6) x, options,funval, Jacob = lsqcurvefit (fun,x0,xdata,ydata,);fun是一個(gè)事先建立的定義函數(shù)F(x,xdata) 的M-文件, 自變量為x和xdata說(shuō)明:x = lsqcurvefit (fun,x0,xdata,ydata,opti

7、ons);迭代初值已知數(shù)據(jù)點(diǎn)選項(xiàng)見(jiàn)無(wú)約束優(yōu)化12 lsqnonlin用以求含參量x(向量)的向量值函數(shù) f(x)=(f1(x),f2(x),fn(x)T 中的參量x,使得 最小。 其中 fi(x)=f(x,xdatai,ydatai) =F(x,xdatai)-ydatai 2. lsqnonlin已知數(shù)據(jù)點(diǎn): xdata=(xdata1,xdata2,xdatan) ydata=(ydata1,ydata2,ydatan)13輸入格式為: 1) x=lsqnonlin(fun,x0); 2) x= lsqnonlin (fun,x0,options); 3) x= lsqnonlin (fu

8、n,x0,options,grad); 4) x,options= lsqnonlin (fun,x0,); 5) x,options,funval= lsqnonlin (fun,x0,);說(shuō)明:x= lsqnonlin (fun,x0,options);fun是一個(gè)事先建立的定義函數(shù)f(x)的M-文件,自變量為x迭代初值選項(xiàng)見(jiàn)無(wú)約束優(yōu)化14 例2 用下面一組數(shù)據(jù)擬合 中的參數(shù)a,b,k該問(wèn)題即解最優(yōu)化問(wèn)題:15 1)編寫M-文件 curvefun1.m function f=curvefun1(x,tdata) f=x(1)+x(2)*exp(-0.02*x(3)*tdata) %其中 x

9、(1)=a; x(2)=b;x(3)=k;2)輸入命令tdata=100:100:1000cdata=1e-03*4.54,4.99,5.35,5.65,5.90,6.10,6.26,6.39,6.50,6.59; x0=0.2,0.05,0.05; x=lsqcurvefit (curvefun1,x0,tdata,cdata) f= curvefun1(x,tdata) F(x,tdata)= ,x=(a,b,k)解法1. 用命令lsqcurvefit163)運(yùn)算結(jié)果為:f =0.0043 0.0051 0.0056 0.0059 0.0061 0.0062 0.0062 0.0063 0

10、.0063 0.0063 x = 0.0063 -0.0034 0.25424)結(jié)論:a=0.0063, b=-0.0034, k=0.254217 解法 2 用命令lsqnonlin f(x)=F(x,tdata,ctada)= x=(a,b,k)1)編寫M-文件 curvefun2.m function f=curvefun2(x) tdata=100:100:1000; cdata=1e-03*4.54,4.99,5.35,5.65,5.90, 6.10,6.26,6.39,6.50,6.59; f=x(1)+x(2)*exp(-0.02*x(3)*tdata)- cdata2)輸入命令

11、: x0=0.2,0.05,0.05;x=lsqnonlin(curvefun2,x0)f= curvefun2(x)函數(shù)curvefun2的自變量是x,cdata和tdata是已知參數(shù),故應(yīng)將cdata tdata的值寫在curvefun2.m中183)運(yùn)算結(jié)果為 f =1.0e-003 *(0.2322 -0.1243 -0.2495 -0.2413 -0.1668 -0.0724 0.0241 0.1159 0.2030 0.2792 x =0.0063 -0.0034 0.2542可以看出,兩個(gè)命令的計(jì)算結(jié)果是相同的.4)結(jié)論:即擬合得a=0.0063 b=-0.0034 k=0.25

12、4219電阻問(wèn)題 溫度t(0C) 20.5 32.7 51.0 73.0 95.7電阻R() 765 826 873 942 1032例. 由數(shù)據(jù)擬合R=a1t+a2方法1.用命令polyfit(x,y,m)得到 a1=3.3940, a2=702.4918方法2.直接用結(jié)果相同。20 在實(shí)驗(yàn)方面,對(duì)某人用快速靜脈注射方式一次注入該藥物300mg后,在一定時(shí)刻t(小時(shí))采集血藥,測(cè)得血藥濃度c(ug/ml)如下表: t (h) 0.25 0.5 1 1.5 2 3 4 6 8c (g/ml) 19.21 18.15 15.36 14.10 12.89 9.32 7.45 5.24 3.01 要

13、設(shè)計(jì)給藥方案,必須知道給藥后血藥濃度隨時(shí)間變化的規(guī)律。從實(shí)驗(yàn)和理論兩方面著手:213.血液容積v, t=0注射劑量d, 血藥濃度立即為d/v.2.藥物排除速率與血藥濃度成正比,比例系數(shù) k(0)模型假設(shè)1. 機(jī)體看作一個(gè)房室,室內(nèi)血藥濃度均勻一室模型模型建立 在此,d=300mg,t及c(t)在某些點(diǎn)處的值見(jiàn)前表,需經(jīng)擬合求出參數(shù)k、v22用線性最小二乘擬合c(t)計(jì)算結(jié)果:d=300;t=0.25 0.5 1 1.5 2 3 4 6 8;c=19.21 18.15 15.36 14.10 12.89 9.32 7.45 5.24 3.01;y=log(c);a=polyfit(t,y,1)k

14、=-a(1)v=d/exp(a(2)程序:用非線性最小二乘擬合c(t)23給藥方案 設(shè)計(jì)cc2c10t 設(shè)每次注射劑量D, 間隔時(shí)間 血藥濃度c(t) 應(yīng)c1 c(t) c2 初次劑量D0 應(yīng)加大給藥方案記為:2、1、計(jì)算結(jié)果:給藥方案:c1=10,c2=25k=0.2347v=15.0224故可制定給藥方案:即: 首次注射375mg, 其余每次注射225mg, 注射的間隔時(shí)間為4小時(shí)。25練習(xí)1 用給定的多項(xiàng)式,如y=x3-6x2+5x-3,產(chǎn)生一組數(shù)據(jù)(xi,yi,i=1,2,n),再在yi上添加隨機(jī)干擾(可用rand產(chǎn)生(0,1)均勻分布隨機(jī)數(shù),或用rands產(chǎn)生N(0,1)分布隨機(jī)數(shù)),然后用xi和添加了隨機(jī)干擾的yi作的3次多項(xiàng)式擬合,與原系數(shù)比較。 如果作2或4次多項(xiàng)式擬合,結(jié)果如何?26 練習(xí)2、用電壓V=10伏的電池給電容器充電,電容器上t時(shí)刻的電壓為 ,其中V0是電容器的初始電壓, 是充電常數(shù)。試由下面一組t,V數(shù)據(jù)確定V0, 。27用非線性最小二乘擬合c(t)-用lsqcurvefit2、主程序lihe2.m如下cleartdata=0.25 0.5 1 1.5 2 3 4 6 8;cdata=19.21

溫馨提示

  • 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)論