版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 三維曲線(非線性)擬合步驟 1 設(shè)定目標(biāo)函數(shù). (M函數(shù)書寫)% 可以是任意的例如: function f=mydata(a,data) %y的值目標(biāo)函數(shù)值 或者是第三維的,a=a(1) ,a(2) 列向量x=data(1,:); %data 是一2維數(shù)組,x=x1y=data(2,:); %data 是一2維數(shù)組,x=x2 f=a(1)*x+a(2)*x.*y; 0000000000000000000 %這里的a(1), a(2)為目標(biāo)函數(shù)的系數(shù)值。 f的值相當(dāng)于ydata的值 2 然后給出數(shù)據(jù)xdata和ydata的數(shù)據(jù)和擬合函數(shù)lsqcurvefit 例如:x1=1.0500 1.05
2、20 1.0530 1.0900 1.0990 1.1020 1.1240 1.1420. 1.1490 1.0500 1.0520 1.0530 1.0900 1.0990 1.1020 1.1240 1.1420 1.1490;x2=3.8500 1.6500 2.7500 5.5000 7.7000 3.3000 4.9500 8.2500 11.5500. 1.6500 2.7500 3.8500 7.7000 3.3000 5.5000 8.2500 11.5500 4.9500;ydata=56.2000 62.8000 62.2000 40.8000 61.4000 57.500
3、0 44.5000 54.8000. 53.9000 64.2000 62.9000 64.1000 63.0000 62.2000 64.2000 63.6000. 52.5000 62.0000;data=x1;x2; %類似于將x1 x2整合成一個(gè)2維數(shù)組。 a0= -0.0014,0.07;option=optimset('MaxFunEvals',5000);format long;a,resnorm=lsqcurvefit(mydata,a0,data,ydata,option);yy=mydata(a,data);result=ydata' yy'
4、 (yy-ydata)'% a的值為擬合的目標(biāo)函數(shù)的參數(shù)值 利用lsqcurvefit進(jìn)行擬合的 它完整的語(yǔ)法形式是:% x,resnorm,residual,exitflag,output,lambda,jacobian =lsqcurvefit(fun,x0,xdata,ydata,lb,ub,options) 二維曲線(非線性)擬合步驟1.function F = myfun(x,xdata)F = x(1)*xdata.2 + x(2)*sin(xdata) + x(3)*xdata.3; % 可以是任意的2.然后給出數(shù)據(jù)xdata和ydata>>xdata = 3
5、.6 7.7 9.3 4.1 8.6 2.8 1.3 7.9 10.0 5.4;>>ydata = 16.5 150.6 263.1 24.7 208.5 9.9 2.7 163.9 325.0 54.3;>>x0 = 10, 10, 10; %初始估計(jì)值>>x,resnorm = lsqcurvefit(myfun,x0,xdata,ydata) 搜狐博客 > 豆豆快樂(lè)吧 > 日志 2009-09-01 | Matlab畫三維圖的方法 Matlab畫三維圖的方法Tags: Matlab. 三維曲線的畫法三維空間曲線要用到plot3函數(shù),這個(gè)和p
6、lot類似。plot3函數(shù)有三個(gè)參數(shù),x,y和z軸,比如下面的例子:>> T = -2:0.01:2;>> plot3(cos(2*pi*T),sin(2*pi*T),T)如果安裝了Symbolic Math Toolbox的話也可以用下面ezlpot3函數(shù)的方法:>> ezplot3('cos(2*pi*T)','sin(2*pi*T)','T',-2 2)三維曲面的畫法有mesh何surf兩種命令來(lái)畫三維曲面,它們使用的場(chǎng)合不同。前者是當(dāng)z軸是x和y的顯式函數(shù)時(shí),后者是x,y,z中某個(gè)為其他2個(gè)的函數(shù)。me
7、sh函數(shù)>> X Y=meshgrid(-2:.1:2, -2:.1:2);>> Z = X.2 - Y.2;>> mesh(X, Y, Z)同理用Symbolic Math Toolbox可以直接執(zhí)行>> ezmesh('X.2 - Y.2', -2 2, -2 2)surf函數(shù)在函數(shù)不能表示成z = f(x, y)時(shí),需要用surf函數(shù)。比如x2+y2+z2=1.先需要用柱面坐標(biāo)或者球坐標(biāo)來(lái)表示。這里用柱面坐標(biāo)表示為 r2+z2=1x = sqrt(1-z2)cos, x = sqrt(1-z2)sin;執(zhí)行matlab指令:
8、>> theta, Z = meshgrid(0:0.1:2)*pi, (-1:0.1:1);>> X =sqrt(1 - Z.2).*cos(theta);>> Y =sqrt(1 - Z.2).*sin(theta);>> surf(X, Y, Z); axis square同理用Symbolic Math Toolbox可以直接執(zhí)行>> ezsurf('sqrt(1-s2)*cos(t)','sqrt(1-s2)*sin(t)', 's', -1, 1, 0, 2*pi); axi
9、s equa常用的一些插值命令命令1 interp1功能 一維數(shù)據(jù)插值(表格查找)。該命令對(duì)數(shù)據(jù)點(diǎn)之間計(jì)算內(nèi)插值。它找出一元函數(shù)f(x)在中間點(diǎn)的數(shù)值。其中函數(shù)f(x)由所給數(shù)據(jù)決定。x:原始數(shù)據(jù)點(diǎn)Y:原始數(shù)據(jù)點(diǎn)xi:插值點(diǎn)Yi:插值點(diǎn)格式 yi = interp1(x,Y,xi) %返回插值向量yi,每一元素對(duì)應(yīng)于參量xi,同時(shí)由向量x 與Y 的內(nèi)插值決定。參量x 指定數(shù)據(jù)Y 的點(diǎn)。若Y 為一矩陣,則按Y 的每列計(jì)算。yi 是階數(shù)為length(xi)*size(Y,2)的輸出矩陣。yi = interp1(Y,xi) %假定x=1:N,其中N 為向量Y 的長(zhǎng)度,或者為矩陣Y 的行數(shù)。yi
10、= interp1(x,Y,xi,method) %用指定的算法計(jì)算插值:nearest:最近鄰點(diǎn)插值,直接完成計(jì)算;linear:線性插值(缺省方式),直接完成計(jì)算;spline:三次樣條函數(shù)插值。對(duì)于該方法,命令interp1 調(diào)用函數(shù)spline、ppval、mkpp、umkpp。這些命令生成一系列用于分段多項(xiàng)式操作的函數(shù)。命令spline 用它們執(zhí)行三次樣條函數(shù)插值;pchip:分段三次Hermite 插值。對(duì)于該方法,命令interp1 調(diào)用函數(shù)pchip,用于對(duì)向量x 與y 執(zhí)行分段三次內(nèi)插值。該方法保留單調(diào)性與數(shù)據(jù)的外形;cubic:與pchip操作相同;v5cubic:在MAT
11、LAB 5.0 中的三次插值。對(duì)于超出x 范圍的xi 的分量,使用方法nearest、linear、v5cubic的插值算法,相應(yīng)地將返回NaN。對(duì)其他的方法,interp1 將對(duì)超出的分量執(zhí)行外插值算法。yi = interp1(x,Y,xi,method,'extrap') %對(duì)于超出x 范圍的xi 中的分量將執(zhí)行特殊的外插值法extrap。yi = interp1(x,Y,xi,method,extrapval) %確定超出x 范圍的xi 中的分量的外插值extrapval,其值通常取NaN 或0。例1>>x = 0:10; y = x.*si
12、n(x);>>xx = 0:.25:10; yy = interp1(x,y,xx);>>plot(x,y,'kd',xx,yy)。例2>> year = 1900:10:2010;>> product = 75.995 91.972 105.711 123.203 131.669 150.697 179.323 203.212 226.505249.633 256.344 267.893 ;>>p1995 = interp1(year,p
13、roduct,1995)>>x = 1900:1:2010;>>y = interp1(year,product,x,'pchip');>>plot(year,product,'o',x,y)插值結(jié)果為:p1995 =252.9885命令2 interp2功能 二維數(shù)據(jù)內(nèi)插值(表格查找)格式 ZI = interp2(X,Y,Z,XI,YI) %返回矩陣ZI,其元素包含對(duì)應(yīng)于參量XI 與YI(可以是向量、或同型矩陣) 的元素, 即Zi(i,j) Xi(i,j),yi(i,j)。用
14、戶可以輸入行向量和列向量Xi 與Yi,此時(shí),輸出向量Zi 與矩陣meshgrid(xi,yi)是同型的。同時(shí)取決于由輸入矩陣X、Y 與Z 確定的二維函數(shù)Z=f(X,Y)。參量X 與Y 必須是單調(diào)的,且相同的劃分格式,就像由命令meshgrid 生成的一樣。若Xi與Yi 中有在X 與Y范圍之外的點(diǎn),則相應(yīng)地返回nan(Not a Number)。ZI = interp2(Z,XI,YI) %缺省地,X=1:n、Y=1:m,其中m,n=size(Z)。再按第一種情形進(jìn)行計(jì)算。ZI = interp2(Z,n) %作n 次遞歸計(jì)算,在Z 的每?jī)蓚€(gè)元素之間插入它們的二維插值,這樣,Z 的階數(shù)將不斷增加
15、。interp2(Z)等價(jià)于interp2(z,1)。ZI = interp2(X,Y,Z,XI,YI,method) %用指定的算法method 計(jì)算二維插值:linear:雙線性插值算法(缺省算法);nearest:最臨近插值;spline:三次樣條插值;cubic:雙三次插值。例3:>>X,Y = meshgrid(-3:.25:3);>>Z = peaks(X,Y);>>XI,YI = meshgrid(-3:.125:3);>>ZZ = interp2(X,Y,Z,XI,Y
16、I);>>surfl(X,Y,Z);hold on;>>surfl(XI,YI,ZZ+15)>>axis(-3 3 -3 3 -5 20);shading flat>>hold off例4>>years = 1950:10:1990;>>service = 10:10:30;>>wage = 150.697 199.592 187.625179.323 195.072 250.287203.212 1
17、79.092 322.767226.505 153.706 426.730249.633 120.281 598.243;>>w = interp2(service,years,wage,15,1975)插值結(jié)果為:w =190.6288命令3 interp3功能 三維數(shù)據(jù)插值(查表)格式 VI = interp3(X,Y,Z,V,XI,YI,ZI) %找出由參量X,Y,Z決定的三元函數(shù)V=V(X,Y,Z)在點(diǎn)(XI,YI,ZI)的值。參量XI,YI,ZI 是同型陣列或向量。若向量參量XI,YI,ZI 是不同長(zhǎng)度,不同方向(行或列)的向量,這時(shí)輸出參量VI 與Y1,
18、Y2,Y3 為同型矩陣。其中Y1,Y2,Y3 為用命令meshgrid(XI,YI,ZI)生成的同型陣列。若插值點(diǎn)(XI,YI,ZI)中有位于點(diǎn)(X,Y,Z)之外的點(diǎn),則相應(yīng)地返回特殊變量值NaN。VI = interp3(V,XI,YI,ZI) %缺省地, X=1:N ,Y=1:M, Z=1:P ,其中,M,N,P=size(V),再按上面的情形計(jì)算。VI = interp3(V,n) %作n 次遞歸計(jì)算,在V 的每?jī)蓚€(gè)元素之間插入它們的三維插值。這樣,V 的階數(shù)將不斷增加。interp3(V)等價(jià)于interp3(V,1)。VI = interp3(?,method) %用指定的算法met
19、hod 作插值計(jì)算:linear:線性插值(缺省算法);cubic:三次插值;spline:三次樣條插值;nearest:最鄰近插值。說(shuō)明 在所有的算法中,都要求X,Y,Z 是單調(diào)且有相同的格點(diǎn)形式。當(dāng)X,Y,Z 是等距且單調(diào)時(shí),用算法*linear,*cubic,*nearest,可得到快速插值。例5>>x,y,z,v = flow(20);>>xx,yy,zz = meshgrid(.1:.25:10, -3:.25:3, -3:.25:3);>>vv = interp3(x,y,z,v,xx,yy,zz)
20、;>>slice(xx,yy,zz,vv,6 9.5,1 2,-2 .2); shading interp;colormap cool命令4 interpft功能 用快速Fourier 算法作一維插值格式 y = interpft(x,n) %返回包含周期函數(shù)x 在重采樣的n 個(gè)等距的點(diǎn)的插值y。若length(x)=m,且x 有采樣間隔dx,則新的y 的采樣間隔dy=dx*m/n。注意的是必須nm。若x 為一矩陣,則按x 的列進(jìn)行計(jì)算。返回的矩陣y 有與x 相同的列數(shù),但有n 行。y = interpft(x,n,dim) %沿著指定的方向dim 進(jìn)行計(jì)算命令5
21、griddata功能 數(shù)據(jù)格點(diǎn)格式 ZI = griddata(x,y,z,XI,YI) %用二元函數(shù)z=f(x,y)的曲面擬合有不規(guī)則的數(shù)據(jù)向量x,y,z。griddata 將返回曲面z 在點(diǎn)(XI,YI)處的插值。曲面總是經(jīng)過(guò)這些數(shù)據(jù)點(diǎn)(x,y,z)的。輸入?yún)⒘浚╔I,YI)通常是規(guī)則的格點(diǎn)(像用命令meshgrid 生成的一樣)。XI 可以是一行向量,這時(shí)XI 指定一有常數(shù)列向量的矩陣。類似地,YI 可以是一列向量,它指定一有常數(shù)行向量的矩陣。XI,YI,ZI = griddata(x,y,z,xi,yi) %返回的矩陣ZI 含義同上,同時(shí),返回的矩陣XI,YI 是由行向量xi 與列向量
22、yi 用命令meshgrid 生成的。? = griddata(?,method) %用指定的算法method 計(jì)算:linear:基于三角形的線性插值(缺省算法);cubic: 基于三角形的三次插值;nearest:最鄰近插值法;v4:MATLAB 4 中的griddata 算法。命令6 spline功能 三次樣條數(shù)據(jù)插值格式 yy = spline(x,y,xx) %對(duì)于給定的離散的測(cè)量數(shù)據(jù)x,y(稱為斷點(diǎn)),要尋找一個(gè)三項(xiàng)多項(xiàng)式y(tǒng) = p(x) ,以逼近每對(duì)數(shù)據(jù)(x,y)點(diǎn)間的曲線。過(guò)兩點(diǎn)(xi, yi) 和(xi+1, yi+1) 只能確定一條直線,而通過(guò)一點(diǎn)的三次多項(xiàng)式曲線有無(wú)窮多條
23、。為使通過(guò)中間斷點(diǎn)的三次多項(xiàng)式曲線具有唯一性,要增加兩個(gè)條件(因?yàn)槿味囗?xiàng)式有4 個(gè)系數(shù)):1三次多項(xiàng)式在點(diǎn)(xi, yi) 處有: pi(xi) = pi(xi) ;2三次多項(xiàng)式在點(diǎn)(xi+1, yi+1) 處有: pi(xi+1) = pi(xi+1) ;3p(x)在點(diǎn)(xi, yi) 處的斜率是連續(xù)的(為了使三次多項(xiàng)式具有良好的解析性,加上的條件);4p(x)在點(diǎn)(xi, yi) 處的曲率是連續(xù)的;對(duì)于第一個(gè)和最后一個(gè)多項(xiàng)式,人為地規(guī)定如下條件: p1(x) = p2(x) pn(x) = pn-1(x)上述兩個(gè)條件稱為非結(jié)點(diǎn)(not-a-knot)條件。綜合上述內(nèi)容,可知對(duì)數(shù)據(jù)擬合的三
24、次樣條函數(shù)p(x)是一個(gè)分段的三次多項(xiàng)式:? ? ?íì =n n n+12 2 31 1 2p (x) x x xp (x) x x xp (x) x x xp(x)L L L L,其中每段pi(x) 都是三次多項(xiàng)式。該命令用三次樣條插值計(jì)算出由向量x 與y 確定的一元函數(shù)y=f(x)在點(diǎn)xx 處的值。若參量y 是一矩陣,則以y 的每一列和x 配對(duì),再分別計(jì)算由它們確定的函數(shù)在點(diǎn)xx 處的值。則yy 是一階數(shù)為length(xx)*size(y,2)的矩陣。pp = spline(x,y) %返回由向量x 與y 確定的分段樣條多項(xiàng)式的系數(shù)矩陣pp,它可用于命令ppval、
25、unmkpp 的計(jì)算。例6對(duì)離散地分布在y=exp(x)sin(x)函數(shù)曲線上的數(shù)據(jù)點(diǎn)進(jìn)行樣條插值計(jì)算:>>x = 0 2 4 5 8 12 12.8 17.2 19.9 20; y = exp(x).*sin(x);>>xx = 0:.25:20;>>yy = spline(x,y,xx);>>plot(x,y,'o',xx,yy)命令7 interpn功能 n 維數(shù)據(jù)插值(查表)格式 VI = interpn(X1,X2,?,Xn,V,Y1,Y2,?,Yn) %返
26、回由參量X1,X2,Xn,V 確定的n 元函數(shù)V=V(X1,X2,Xn)在點(diǎn)(Y1,Y2,Yn)處的插值。參量Y1,Y2,Yn 是同型的矩陣或向量。若Y1,Y2,Yn 是向量,則可以是不同長(zhǎng)度,不同方向(行或列)的向量。它們將通過(guò)命令ndgrid生成同型的矩陣, 再作計(jì)算。若點(diǎn)(Y1,Y2,Yn) 中有位于點(diǎn)(X1,X2,Xn)之外的點(diǎn),則相應(yīng)地返回特殊變量NaN。VI = interpn(V,Y1,Y2,?,Yn) %缺省地,X1=1:size(V,1),X2=1:size(V,2), ,Xn=1:size(V,n),再按上面的情形計(jì)算。VI = interpn(V,ntimes) %作nt
27、imes 次遞歸計(jì)算,在V 的每?jī)蓚€(gè)元素之間插入它們的n 維插值。這樣,V 的階數(shù)將不斷增加。interpn(V)等價(jià)于interpn(V, 1)。VI = interpn(?,method) %用指定的算法method 計(jì)算:linear:線性插值(缺省算法);cubic:三次插值;spline:三次樣條插值法;nearest:最鄰近插值算法。命令8 meshgrid功能 生成用于畫三維圖形的矩陣數(shù)據(jù)。格式 X,Y = meshgrid(x,y) 將由向量x,y(可以是不同方向的)指定的區(qū)域min(x),max(x) , min(y) , max(y) 用直線x=x(i),y=y(j) ( i=1,2,length(x) ,j=1,2,length(y))進(jìn)行劃分。這樣,得到了length(x)*length(y)個(gè)點(diǎn),這些點(diǎn)的橫坐標(biāo)用矩陣X 表示,X 的每個(gè)行向量與向量x 相同;這些點(diǎn)的縱坐標(biāo)用矩陣Y 表示,Y 的每個(gè)列向量與向量y 相同。其中X,Y可用于計(jì)算二元函數(shù)z=f(x,y)與三維圖形中xy 平面矩形定義域的劃分或曲面作圖。X,Y = meshgrid(x) %等價(jià)于X,Y=meshgrid(x,x)。X,Y,Z = meshgrid(x,y,z) %生成三維陣列X,Y,Z,用于計(jì)算三元函數(shù)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通事故私下調(diào)解協(xié)議書
- 個(gè)人土地補(bǔ)償協(xié)議書
- 闌尾結(jié)石病因介紹
- (立項(xiàng)備案申請(qǐng)模板)海砂淡化及機(jī)制砂項(xiàng)目可行性研究報(bào)告參考范文
- 2023年天津市河西區(qū)高考語(yǔ)文三模試卷
- 山東省菏澤市鄄城縣2024-2025學(xué)年七年級(jí)上學(xué)期期中生物學(xué)試題(解析版)-A4
- 2023年直流鼓風(fēng)機(jī)項(xiàng)目融資計(jì)劃書
- 護(hù)理資料培訓(xùn)課件 大便標(biāo)本采集相關(guān)知識(shí)
- 養(yǎng)老院老人康復(fù)設(shè)施使用管理制度
- 培訓(xùn)過(guò)程控制培訓(xùn)課件
- 2024年《書籍裝幀設(shè)計(jì)》教案
- 浙江省衢州市錦繡育才教育集團(tuán)2023-2024學(xué)年七年級(jí)上學(xué)期期末考試科學(xué)試卷
- 常見的金屬材料課件
- 云上:再見啦!母親大人
- 游戲客服處理技巧培訓(xùn)課件
- 生態(tài)文明教育視域下的語(yǔ)文教材選文研究以義務(wù)教育統(tǒng)編語(yǔ)文教材為例
- 創(chuàng)業(yè)計(jì)劃書大學(xué)生攝影工作室
- 人工智能倫理導(dǎo)論- 課件 3-人工智能倫理
- 第章列車自動(dòng)駕駛(ATO)系統(tǒng)方案
- 新能源240MW風(fēng)電項(xiàng)目投資計(jì)劃書
- 噪聲防治培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論