數(shù)學(xué)建模中MATLAB數(shù)據(jù)處理方法(建模推薦)_第1頁
數(shù)學(xué)建模中MATLAB數(shù)據(jù)處理方法(建模推薦)_第2頁
數(shù)學(xué)建模中MATLAB數(shù)據(jù)處理方法(建模推薦)_第3頁
數(shù)學(xué)建模中MATLAB數(shù)據(jù)處理方法(建模推薦)_第4頁
數(shù)學(xué)建模中MATLAB數(shù)據(jù)處理方法(建模推薦)_第5頁
已閱讀5頁,還剩75頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)學(xué)建模中的數(shù)據(jù)處理方法范筑軍主要內(nèi)容曲線插值與擬合數(shù)值微分與積分微分方程數(shù)值解優(yōu)化問題回歸分析判別分析曲線插值與擬合一維插值一維插值二維插值二維插值曲線擬合曲線擬合一維插值對(duì)表格給出的函數(shù),求出沒有給出的函數(shù)值。對(duì)表格給出的函數(shù),求出沒有給出的函數(shù)值。在實(shí)際工作中,經(jīng)常會(huì)遇到插值問題。下表是待加工零件下輪廓線的一組數(shù)據(jù),現(xiàn)需要得到x坐標(biāo)每改變0.1時(shí)所對(duì)應(yīng)的y的坐標(biāo).一維插值下面是關(guān)于插值的兩條命令(專門用來解決這類問題):y=interp1(x0,y0,x,method) 分段線性插值y=spline(x0,y0,x) 三次樣條插值x0,y0是已知的節(jié)點(diǎn)坐標(biāo),是同維向量。y對(duì)應(yīng)于x處的插值

2、。y與x是同維向量。method可選nearest(最近鄰插值),linear(線性插值),spline(三次樣條插值),cubic(三次多項(xiàng)式插值)一維插值解決上述問題,我們可分兩步: 用原始數(shù)據(jù)繪圖作為選用插值方法的參考. 確定插值方法進(jìn)行插值計(jì)算一維插值(px_lc11.m)(px_lc11.m)對(duì)于上述問題,可鍵入以下的命令:x0=0,3,5,7,9,11,12,13,14,15;y0=0,1.2,1.7,2.0,2.1,2.0,1.8,1.2,1.0,1.6plot(x0,y0) %完成第一步工作x=0:0.1:15;y=interp1(x0,y0,x); %用分段線性插值完成第二步

3、工作plot(x,y)y=spline(x0,y0,x); plot(x,y) %用三次樣條插值完成第二步工作練習(xí)對(duì)y=1/(1+x2),-5x5,用n(=11)個(gè)節(jié)點(diǎn)(等分)作上述兩種插值,用m(=21)個(gè)插值點(diǎn)(等分)作圖,比較結(jié)果。(see:px_ex_lc1.m)在某處測(cè)得海洋不同深度處水溫如下表:求深度為500、1000、1500米處的水溫。 (see:px_ex_lc2.m)二維插值MATLAB中二維插值的命令是:z=interp2(x0,y0,z0,x,y,meth)二維插值在一個(gè)長(zhǎng)為5個(gè)單位,寬為3個(gè)單位的金屬薄片上測(cè)得15個(gè)點(diǎn)的溫度值,試求出此薄片的溫度分布,并繪出等溫線圖。

4、(數(shù)據(jù)如下表)二維插值(px_lc21.m)(px_lc21.m)temps=82,81,80,82,84;79,63,61,65,87;84,84,82,85,86;mesh(temps) %根據(jù)原始數(shù)據(jù)繪出溫度分布圖,可看到此圖的粗造度。二維插值%下面開始進(jìn)行二維函數(shù)的三階插值。 width=1:5; depth=1:3; di=1:0.2:3; wi=1:0.2:5; WI,DI=meshgrid(wi,di);%增加了節(jié)點(diǎn)數(shù)目 ZI=interp2(width,depth,temps,WI,DI,cubic); % 對(duì)數(shù)據(jù)(width,depth,temps)進(jìn) % 行三階插值擬合。

5、surfc(WI,DI,ZI)contour(WI,DI,ZI)二維插值曲線擬合假設(shè)一函數(shù)假設(shè)一函數(shù)g(x)g(x)是以表格形式給出的,現(xiàn)是以表格形式給出的,現(xiàn)要求一函數(shù)要求一函數(shù)f(x)f(x),使,使f(x)f(x)在某一準(zhǔn)則下與在某一準(zhǔn)則下與表格函數(shù)(數(shù)據(jù))最為接近表格函數(shù)(數(shù)據(jù))最為接近。由于與插值的提法不同,所以在數(shù)學(xué)上理論根據(jù)不同,解決問題的方法也不同。此處,我們總假設(shè)f(x)f(x)是多項(xiàng)式。曲線擬合問題:彈簧在力F的作用下伸長(zhǎng)x厘米。F和x在一定的范圍內(nèi)服從虎克定律。試根據(jù)下列數(shù)據(jù)確定彈性系數(shù)k,并給出不服從虎克定律時(shí)的近似公式。曲線擬合解題思路:可以用一階多項(xiàng)式擬合求出k,以

6、及近似公式。在MATLAB中,用以下命令擬合多項(xiàng)式。polyfit(x0,y0,n)一般,也需先觀察原始數(shù)據(jù)的圖像,然后再確定擬和成什么曲線。曲線擬合(px_lc31.m)(px_lc31.m)對(duì)于上述問題,可鍵入以下的命令:x=1,2,4,7,9,12,13,15,17; F=1.5,3.9,6.6,11.7,15.6,18.8,19.6,20.6,21.1; plot(x,F,.)從圖像上我們發(fā)現(xiàn):前5個(gè)數(shù)據(jù)應(yīng)與直線擬合,后5個(gè)數(shù)據(jù)應(yīng)與二次曲線擬合。于是鍵入 : a=polyfit(x(1:5),F(1:5),1); a=polyfit(x(5:9),F(5:9),2)曲線擬合注意:有時(shí),

7、面對(duì)一個(gè)實(shí)際問題,究竟是用插值還是用擬合不好確定,還需大家在實(shí)際中仔細(xì)區(qū)分。同時(shí),大家(包括學(xué)過計(jì)算方法的同學(xué))注意去掌握相應(yīng)的理論知識(shí)。數(shù)值微分與積分?jǐn)?shù)值積分?jǐn)?shù)值積分?jǐn)?shù)值微分?jǐn)?shù)值微分?jǐn)?shù)值積分先看一個(gè)例子:現(xiàn)要根據(jù)瑞士地圖計(jì)算其國(guó)土面積。于是對(duì)地圖作如下的測(cè)量:以西東方向?yàn)闄M軸,以南北方向?yàn)榭v軸。(選適當(dāng)?shù)狞c(diǎn)為原點(diǎn))將國(guó)土最西到最東邊界在x軸上的區(qū)間劃取足夠多的分點(diǎn)xi,在每個(gè)分點(diǎn)處可測(cè)出南北邊界點(diǎn)的對(duì)應(yīng)坐標(biāo)y1 ,y2。用這樣的方法得到下表根據(jù)地圖比例知18mm相當(dāng)于40km,試由上表計(jì)算瑞士國(guó)土的近似面積。(精確值為41288km2)。數(shù)值積分?jǐn)?shù)值積分解題思路:數(shù)據(jù)實(shí)際上表示了兩條曲線,實(shí)

8、際上我們要求由兩曲線所圍成的圖形的面積。解此問題的方法是數(shù)值積分的方法。具體解時(shí)我們遇到兩個(gè)問題:1。數(shù)據(jù)如何輸入;2。沒有現(xiàn)成的命令可用。數(shù)值積分(px_wj11.m)(px_wj11.m)對(duì)于第一個(gè)問題,我們可把數(shù)據(jù)拷貝成M文件(或純文本文件)。然后,利用數(shù)據(jù)繪制平面圖形。鍵入load mianji.txtA=mianji;plot(A(:,1),A(:,2),r,A(:,1),A(:,3),g)數(shù)值積分?jǐn)?shù)值積分接下來可以計(jì)算面積。鍵入:a1=trapz(A(:,1)*40/18,A(:,2)*40/18);a2=trapz(A(:,1)*40/18,A(:,3)*40/18);d=a2-

9、a1d = 4.2414e+004數(shù)值積分至此,問題可以說得到了解決。之所以說還有問題,是我們覺得誤差較大。但計(jì)算方法的理論給了我們更精確計(jì)算方法。只是MATLAB沒有相應(yīng)的命令。想得到更理想的結(jié)果,我們可以自己設(shè)計(jì)解決問題的方法。(可以編寫辛普森數(shù)值計(jì)算公式的程序,或用擬合的方法求出被積函數(shù),再利用MATLAB的命令quad,quad8)數(shù)值微分已知20世紀(jì)美國(guó)人口統(tǒng)計(jì)數(shù)據(jù)如下,根據(jù)數(shù)據(jù)計(jì)算人口增長(zhǎng)率。(其實(shí)還可以對(duì)于后十年人口進(jìn)行預(yù)測(cè))數(shù)值微分解題思路:設(shè)人口是時(shí)間的函數(shù)x(t).于是人口的增長(zhǎng)率就是x(t)對(duì)t的導(dǎo)數(shù).如果計(jì)算出人口的相關(guān)變化率 。那么人口增長(zhǎng)滿足 ,它在初始條件x(0)

10、=x0下的解為 .(用以檢查計(jì)算結(jié)果的正確性)xxtr)(數(shù)值微分解:此問題的特點(diǎn)是以離散變量給出函數(shù)x(t),所以就要用差分來表示函數(shù)x(t)的導(dǎo)數(shù).常用后一個(gè)公式。(因?yàn)?,它?shí)際上是用二次插值函數(shù)來代替曲線x(t))即常用三點(diǎn)公式來代替函數(shù)在各分點(diǎn)的導(dǎo)數(shù)值:數(shù)值微分MATLAB用命令diff按兩點(diǎn)公式計(jì)算差分;此題自編程序用三點(diǎn)公式計(jì)算相關(guān)變化率.編程如下(diff3.m):for i=1:length(x) if i=1 r(1)=(-3*x(1)+4*x(1+1)-x(1+2)/(20*x(1); elseif i=length(x) r(i)=(x(i+1)-x(i-1)/(20*x

11、(i); else r(length(x)=(x(length(x)-2)-4*x(length(x)-1)+3*x(length(x)/(20*x(length(x); endendr=r;數(shù)值微分保存為diff3.m文件聽候調(diào)用.再在命令窗內(nèi)鍵入X=1900,1910,1920,1930,1940,1950,1960,1970,1980,1990;x=76.0, 92.0, 106.5, 123.2, 131.7, 150.7, 179.3, 204.0, 226.5, 251.4;diff3;由于r以離散數(shù)據(jù)給出,所以要用數(shù)值積分計(jì)算.鍵入x(1,1)*exp(trapz(X(1,1:9

12、),r(1:9)數(shù)值積分命令:trapz(x),trapz(x,y),quad(fun,a,b)等.微分方程數(shù)值解(單擺問題)單擺問題的數(shù)學(xué)模型是在初始角度不大時(shí),問題可以得到很好地解決,但如果初始角較大,此方程無法求出解析解.現(xiàn)問題是當(dāng)初始角為100和300時(shí),求出其解,畫出解的圖形進(jìn)行比較。微分方程數(shù)值解(單擺問題)解:若0較小,則原方程可用 來近似.其解析解為(t)= 0cost, . 若不用線性方程來近似,那么有兩個(gè)模型:微分方程數(shù)值解(單擺問題)取g=9.8,l=25, 100=0.1745, 300=0.5236.用MATLAB求這兩個(gè)模型的數(shù)值解,先要作如下的處理:令x1=,x2

13、=,則模型變?yōu)槲⒎址匠虜?shù)值解(單擺問題)再編函數(shù)文件(danbai.m)function xdot=danbai(t,x)xdot=zeros(2,1);xdot(1)=x(2);xdot(2)=-9.8/25*sin(x(1);微分方程數(shù)值解(單擺問題)在命令窗口鍵入()t,x=ode45(danbai,0:0.1:20,0.1745,0);t,y=ode45(danbai,0:0.1:20,0.5236,0);plot(t,x(:,1),r,t,y(:,1),k);優(yōu)化問題線性規(guī)劃有約束極小問題線性規(guī)劃有約束極小問題非線性規(guī)劃有約束極小問題非線性規(guī)劃有約束極小問題非線性無約束極小問題非線性

14、無約束極小問題非線性最小二乘問題非線性最小二乘問題二次規(guī)劃二次規(guī)劃線性規(guī)劃有約束極小問題模型模型用命令x, fval= linprog(f,A,b,A1,b1,lb,ub)線性規(guī)劃有約束極小問題Find x x that minimizes f(x x)=-5x1-4x2-6x3subject tox1-x2+x3203x1+2x2+4x3423x1+2x2300 x1, 0 x2,0 x3線性規(guī)劃有約束極小問題線性規(guī)劃有約束極小問題解問題把問題極小化并將約束標(biāo)準(zhǔn)化線性規(guī)劃有約束極小問題鍵入c=-2,-3,5;a=-2,5,-1;b=-10;a1=1,1,1;b1=7;LB=0,0,0;x,y

15、=linprog(c,a,b,a1,b1,LB)得當(dāng)X=(6.4286,0.5714,0.0000)時(shí),z=-14.5714最大.線性規(guī)劃有約束極小問題解問題線性規(guī)劃有約束極小問題解:鍵入c=-2,-1,1;a=1,4,-1;2,-2,1;b=4;12;a1=1,1,2;b1=6;lb=0;0;-inf;ub=inf;inf;5;x,z=linprog(c,a,b,a1,b1,lb,ub) 得當(dāng)X=(4.6667,0.0000,0.6667)時(shí),z=-8.6667最小.非線性規(guī)劃有約束極小問題模型模型:MATLAB求解此問題的命令是:x,fval,exitflag,output,lambda,

16、grad,hessian=fmincon(fun,x0,A,b,A1,b1,LB,UB,nonlcon,options,p1,p2,)fun是目標(biāo)函數(shù)的m_文件名.nonlcon是約束函數(shù)C(x)和C1(x)的m_文件名.文件輸出為C,C1.非線性規(guī)劃有約束極小問題求解最優(yōu)化問題非線性規(guī)劃有約束極小問題第1步: 建立目標(biāo)函數(shù)和非線性約束的m_文件.function y=e1511(x)% 目標(biāo)函數(shù)的m_文件y=exp(x(1)*(4*x(1)2+2*x(2)2+4*x(1)*x(2)+2*x(2)+1);function c1,c2=e1511b(x)% 非線性約束的m_文件c1=1.5+x(

17、1)*x(2)-x(1)-x(2);-x(1)*x(2)-10;c2=0;非線性規(guī)劃有約束極小問題第2步: 運(yùn)行程序.鍵入x0=-1,1;a1=1,1;b1=0;x,f,exitflab,output=fmincon(e1511,x0,a1,b1,e1511b)得結(jié)果.輸出結(jié)果的意義:經(jīng)過4次迭代(iterations:4)收斂到了(exitfag=1)最優(yōu)解x(1)=-1.2247,x(2)=1.2247,目標(biāo)函數(shù)最優(yōu)值為1.8951.非線性無約束極小問題用命令x=fmin(f,x0)?;蛴妹顇=fminu(f ,x0),或用命令x=fmins(f ,x0)。非線性最小二乘問題用命令x=l

18、eastsq(f ,x0),或用命令x=curvefit(f ,x0)。二次規(guī)劃用命令x=qp(H,c,A,b)。關(guān)于這些命令的詳細(xì)使用規(guī)則和例子,用借助help進(jìn)行查閱?;貧w分析前面我們?cè)鴮W(xué)過擬合。但從統(tǒng)計(jì)的觀點(diǎn)看,對(duì)擬合問題還需作回歸分析。例如:有描述問題甲和問題乙的兩組數(shù)據(jù)(x,y)和(x,z)。設(shè)x=1,2,3,4;y=1.0,1.3,1.5,2.02.3;z=0.6,1.95,0.9,2.85,1.8。如果在平面上畫出散點(diǎn)圖,那么問題甲的四個(gè)點(diǎn)基本在一條直線上而問題乙的四個(gè)點(diǎn)卻很散亂。如果都用命令polyfit(x,y,1),polyfit(x,z,1)來擬合,將得到同一條直線?;貧w

19、分析自然對(duì)問題甲的信任程度會(huì)高于對(duì)問題乙的信任程度。所以有必要對(duì)所得結(jié)果作科學(xué)的評(píng)價(jià)分析?;貧w分析就是解決這種問題的科學(xué)方法。下面結(jié)合三個(gè)具體的例子介紹MATLAB實(shí)現(xiàn)回歸分析的命令。回歸分析合金強(qiáng)度y與其中含碳量x有密切關(guān)系,如下表根據(jù)此表建立y(x)。并對(duì)結(jié)果作可信度進(jìn)行檢驗(yàn)、判斷x對(duì)y影響是否顯著、檢查數(shù)據(jù)中有無異常點(diǎn)、由x的取值對(duì)y作出預(yù)測(cè)?;貧w分析解:在x-y平面上畫散點(diǎn)圖,直觀地知道y與x大致為線性關(guān)系。用命令polyfit(x,y,1)可得y=140.6194x+27.0269。作回歸分析用命令b,bint,r,rint,ststs=regress(y,x,alpha) 可用he

20、lp查閱此命令的具體用法殘差及置信區(qū)間可以用rcoplot(r,rint)畫圖回歸分析設(shè)回歸模型為 y=0+1x,在MATLAB命令窗口中鍵入下列命令進(jìn)行回歸分析(px_reg11.m)x=0.1:0.01:0.18;x=x,0.2,0.21,0.23;y=42,41.5,45,45.5,45,47.5,49,55,50,55,55.5,60.5;X=ones(12,1),x;b,bint,r,rint,stats=regress(y,X,0.05);b,bint,stats,rcoplot(r,rint)回歸分析得結(jié)果和圖b = 27.0269 140.6194bint = 22.3226

21、31.7313 111.7842 169.4546stats = 0.9219 118.0670 0.0000 3.1095回歸分析結(jié)果含義為0=27.0269 1=140.61940的置信區(qū)間是 22.3226,31.73131的置信區(qū)間是 111.7842,169.4546回歸分析R2=0.9219 F=118.0670, p10-4.R是衡量y與x的相關(guān)程度的指標(biāo),稱為相關(guān)系數(shù)。R越大,x與y關(guān)系越密切。通常R大于0.9才認(rèn)為相關(guān)關(guān)系成立。F是一統(tǒng)計(jì)指標(biāo)p是與F對(duì)應(yīng)的概率,當(dāng) p0.05時(shí),回歸模型成立。此例中 p=0 10-40.05,所以,所得回歸模型成立?;貧w分析觀察所得殘差分布圖

22、,看到第8個(gè)數(shù)據(jù)的殘差置信區(qū)間不含零點(diǎn),此點(diǎn)視為異常點(diǎn),剔除后重新計(jì)算。24681012-6-4-20246Residual Case Order PlotResidualsCase Number回歸分析此時(shí)鍵入:(px_reg12.m)X(8,:)=;y(8)=;b,bint,r,rint,stats=regress(y,X);b,bint,stats,rcoplot(r,rint)回歸分析b = 27.0992 137.8085bint = 23.8563 30.3421 117.8534 157.7636stats = 0.9644 244.0571 0.0000 1.4332可以看到:

23、置信區(qū)間縮小;R2、F變大,所以應(yīng)采用修改后的結(jié)果?;貧w分析將17至19歲的運(yùn)動(dòng)員每?jī)蓺q一組分為7組,每組兩人測(cè)量其旋轉(zhuǎn)定向能力,以考察年齡(x)對(duì)這種運(yùn)動(dòng)能力(y)的影響?,F(xiàn)得到一組數(shù)據(jù)如下表試建立關(guān)系y(x),并作必要的統(tǒng)計(jì)分析?;貧w分析在x-y平面上畫散點(diǎn)圖,直觀地知道y與x大致為二次函數(shù)關(guān)系。設(shè)模型為y=a1x2+a2x+a3此問題可以利用命令polyfit(x,y,2)來解,也可以像上題一樣求解。下面介紹用命令polytool來解?;貧w分析首先在命令窗口鍵入(px_reg21.m)x=17:2:29;x=x,x;y=20.48,25.13,26.15 30,26.1,20.3,19.

24、35,24.35,28.11,26.3,31.4,26.92,25.7,21.3;polytool(x,y,2)得到一個(gè)交互式窗口回歸分析182022242628101520253035回歸分析窗口中綠線為擬合曲線、紅線為y的置信區(qū)間、可通過移動(dòng)鼠標(biāo)的十字線或通過在窗口下方輸入來設(shè)定x值,窗口左邊則輸出與x對(duì)應(yīng)的y值及y的置信區(qū)間。通過左下方的Export下拉菜單可輸出回歸系數(shù)等。更詳細(xì)的解釋可通過help查閱。回歸分析某廠生產(chǎn)的某產(chǎn)品的銷售量與競(jìng)爭(zhēng)對(duì)手的價(jià)格x1和本廠的價(jià)格x2有關(guān)。下表是該產(chǎn)品在10個(gè)城市的銷售記錄。試建立關(guān)系y(x1,x2),對(duì)結(jié)果進(jìn)行檢驗(yàn)。若某城市本廠產(chǎn)品售價(jià)160(元

25、),對(duì)手售價(jià)170(元),預(yù)測(cè)此產(chǎn)品在該城市的銷售量?;貧w分析這是一個(gè)多元回歸問題。若設(shè)回歸模型是線性的,即設(shè)y=0+1x1+2x2那么依然用regress(y,x,alpha)求回歸系數(shù)?;貧w分析鍵入(px_reg31.m)x1=120,140,190,130,155,175,125,145,180,150;x2=100,110,90,150,210,150,250,270,300,250;y=102,100,120,77,46,93,26,69,65,85;x=ones(10,1),x1,x2;b,bint,r,rint,stats=regress(y,x);b,bint,stats,回歸分析b = 66.5176 0.4139 -0.2698bint = -32.5060 165.5411 -

溫馨提示

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