數(shù)學(xué)模型講稿_第1頁
數(shù)學(xué)模型講稿_第2頁
數(shù)學(xué)模型講稿_第3頁
數(shù)學(xué)模型講稿_第4頁
數(shù)學(xué)模型講稿_第5頁
已閱讀5頁,還剩119頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) MATLAB介紹介紹 MATLABMATLAB介紹介紹 一、變 量 二、函 數(shù) 三、 矩陣(數(shù)值)運(yùn)算 四、 MATLABMATLAB編程 六、 符號運(yùn)算 五、 優(yōu)化求解 七、 多項(xiàng)式運(yùn)算 數(shù)學(xué)運(yùn)算符號及標(biāo)點(diǎn)符號數(shù)學(xué)運(yùn)算符號及標(biāo)點(diǎn)符號 +加法運(yùn)算,適用于兩個數(shù)或兩個同階矩陣相加. 減法運(yùn)算 *乘法運(yùn)算 .*點(diǎn)乘運(yùn)算 /除法運(yùn)算 ./點(diǎn)除運(yùn)算 乘冪運(yùn)算 .點(diǎn)乘冪運(yùn)算 反斜杠表示左除. (1)MATLAB的每條命令后,若為逗號逗號或或無標(biāo)點(diǎn)無標(biāo)點(diǎn)符號, 則顯示命令的結(jié)果;若命令后為分號分號,則禁止顯示結(jié)果. (2)“%” 后面所有文字為注釋. (3) “.”表

2、示續(xù)行. 函 數(shù)名 稱函 數(shù)名 稱 sin(x)正弦函數(shù)asin(x)反正弦函數(shù) cos(x)余弦函數(shù)acos(x)反余弦函數(shù) tan(x)正切函數(shù)atan(x)反正切函數(shù) abs(x) 絕對值max(x) 最大值 min(x) 最小值sum(x)元素的總和 sqrt(x) 開平方exp(x)以 e為底的指數(shù) log(x)自然對數(shù) )(log10 x 以 10 為底的對數(shù) sign(x)符號函數(shù)fix(x)取整 數(shù)學(xué)函數(shù)數(shù)學(xué)函數(shù) MATLAB的內(nèi)部函數(shù)是有限的,有時為了研究某一個函數(shù)的各種性態(tài),需要為的內(nèi)部函數(shù)是有限的,有時為了研究某一個函數(shù)的各種性態(tài),需要為 MATLAB定義新函數(shù),為此必須

3、編寫函數(shù)文件定義新函數(shù),為此必須編寫函數(shù)文件. 函數(shù)文件是文件名后綴為函數(shù)文件是文件名后綴為M的文件的文件 ,這類文件的,這類文件的第一行必須是一特殊字符第一行必須是一特殊字符function開始開始,格式為:,格式為: function 因變量名因變量名=函數(shù)名(自變量名)函數(shù)名(自變量名) 函數(shù)值的獲得必須通過具體的運(yùn)算實(shí)現(xiàn),并賦給因變量函數(shù)值的獲得必須通過具體的運(yùn)算實(shí)現(xiàn),并賦給因變量. M文件文件 M文件建立方法:文件建立方法:1. 在在Matlab中,點(diǎn)中,點(diǎn):File-New-M-file 2. 在編輯窗口中輸入程序內(nèi)容在編輯窗口中輸入程序內(nèi)容 3. 點(diǎn):點(diǎn):File-Save,存盤

4、,存盤,M文件名必須文件名必須 與函數(shù)名一致。與函數(shù)名一致。 Matlab的應(yīng)用程序也以的應(yīng)用程序也以M文件保存。文件保存。 例:定義函數(shù)例:定義函數(shù) f(x1,x2)=100(x2-x12)2+(1-x1)2 function f=fun(x) f=100*(x(2)-x(1)2)2+(1-x(1)2 1.建立建立M文件:文件:fun.m MATLAB(fu n) 2. 可以直接使用函數(shù)可以直接使用函數(shù)fun.m 例如:計(jì)算例如:計(jì)算 f(1,2), 只需在只需在Matlab命令窗口鍵入命令:命令窗口鍵入命令: x=1 2 fun(x) 數(shù)據(jù)的輸入輸出 1. input函數(shù):用于向計(jì)算機(jī)輸入

5、一個參數(shù)。 調(diào)用格式: A=input(提示信息,選項(xiàng)); 注:s選項(xiàng),則允許用戶輸入一個字符串。 例如想輸入一個人的姓名,可采用命令 xm=input(Whats your name:,s) 【例2】 求一元二次方程a2 +bx+c=0的根。 二數(shù)據(jù)的輸入輸出 a=input(a=?); b=input(b=?); c=input(c=?); d=b*b-4*a*c; x=(-b+sqrt(d)/(2*a),(-b-sqrt(d)/(2*a) 將該程序以aa.m文件存盤,然后運(yùn)行aa.m文件。 2 pause函數(shù):暫停程序的執(zhí)行。 調(diào)用格式: pause(延遲秒數(shù)) 注:如果省略延遲時間,直

6、接使用pause,則將暫 停程序,直到用戶按任一鍵后程序繼續(xù)執(zhí)行。 二數(shù)據(jù)的輸入輸出 3 disp函數(shù):函數(shù):命令窗口輸出函數(shù)。 調(diào)用格式: disp(輸出項(xiàng)) 注:輸出項(xiàng)為字符串或矩陣。 例如 A=Hello,MATLAB; disp(A) 輸出為: Hello,MATLAB 三、三、 矩矩 陣陣 逗號逗號或或空格空格用于分隔某一行的元素,用于分隔某一行的元素,分號分號用于區(qū)分不用于區(qū)分不 同的行同的行. 除了分號,在輸入矩陣時,按除了分號,在輸入矩陣時,按Enter鍵也表示開鍵也表示開 始一新行始一新行. 輸入矩陣時,嚴(yán)格要求所有行有相同的列輸入矩陣時,嚴(yán)格要求所有行有相同的列. 例例 m

7、=1 2 3 4 ;5 6 7 8;9 10 11 12 p=1 1 1 1 2 2 2 2 3 3 3 3 1、矩陣的建立、矩陣的建立 特殊矩陣特殊矩陣的建立:. MATLAB(m atrix1) d=eye(m,n) 產(chǎn)生一個產(chǎn)生一個m行、行、n列的單位矩陣列的單位矩陣 c=ones(m,n) 產(chǎn)生一個產(chǎn)生一個m行、行、n列的元素列的元素 全為全為1的矩陣的矩陣 b=zeros(m,n) 產(chǎn)生一個產(chǎn)生一個m行、行、n列的零矩陣列的零矩陣 a= 產(chǎn)生一個空矩陣,當(dāng)對一項(xiàng)操作無結(jié)產(chǎn)生一個空矩陣,當(dāng)對一項(xiàng)操作無結(jié) 果時,返回空矩陣,空矩陣的大小為零果時,返回空矩陣,空矩陣的大小為零. 關(guān)系與邏輯

8、運(yùn)算關(guān)系與邏輯運(yùn)算 1、關(guān)系操作符、關(guān)系操作符 關(guān)關(guān)系系操操作作符符說說明明 小小于于 大大于于 =大大于于或或等等于于 = =等等于于 =不不等等于于 1、for循環(huán):循環(huán):允許一組命令以固定的和預(yù)定的次數(shù)重復(fù)允許一組命令以固定的和預(yù)定的次數(shù)重復(fù) for x=array commands end 在在for和和end語句之間的命令串語句之間的命令串commands按數(shù)組(按數(shù)組(array)中的每一列執(zhí)行一次)中的每一列執(zhí)行一次. 在每一次迭代中,在每一次迭代中,x被指定為數(shù)組的下一列,即在第被指定為數(shù)組的下一列,即在第n次循環(huán)中,次循環(huán)中,x=array(:,:,n) 控制流控制流 MAT

9、LAB提供三種決策或控制流結(jié)構(gòu):提供三種決策或控制流結(jié)構(gòu): for循環(huán)、循環(huán)、while循環(huán)、循環(huán)、if-else-end結(jié)構(gòu)結(jié)構(gòu). 這些結(jié)構(gòu)經(jīng)常包含大量的這些結(jié)構(gòu)經(jīng)常包含大量的MATLAB命令,故經(jīng)常出現(xiàn)在命令,故經(jīng)常出現(xiàn)在MATLAB程序中,而程序中,而 不是直接加在不是直接加在MATLAB提示符下提示符下. 例例 對對n=1,2,10,求求xn= 的值的值 10 sin n MATLAB(for 1) while expression commands end 只要在表達(dá)式只要在表達(dá)式(expression)里的所有元素為真,就執(zhí)行里的所有元素為真,就執(zhí)行while和和end語句之間的命

10、語句之間的命 令串令串commands. 2、While循環(huán)循環(huán) 與與for循環(huán)以固定次數(shù)求一組命令相反,循環(huán)以固定次數(shù)求一組命令相反,while循環(huán)以不定的次數(shù)求一組語句的值循環(huán)以不定的次數(shù)求一組語句的值. MATLAB(w hile1) 例例 設(shè)銀行年利率為設(shè)銀行年利率為11.25%。將。將10000元錢存入銀行,問多長時間會連本元錢存入銀行,問多長時間會連本 帶利翻一番?帶利翻一番? 3、If-Else-End結(jié)構(gòu)結(jié)構(gòu) (1)有一個選擇的一般形式是:)有一個選擇的一般形式是: if expression commands end 如果在表達(dá)式如果在表達(dá)式(expression)里的所有元

11、素為真里的所有元素為真 ,就執(zhí)行,就執(zhí)行if和和end語句之間的命令串語句之間的命令串commands. MATLAB(fu n1) ) 1(),2( , 12 11 )( 2 ff xx xx xf求設(shè)例 先建立先建立M文件文件fun1.m定義函數(shù)定義函數(shù)f(x),再在),再在Matlab命令窗口命令窗口 輸入輸入fun1(2),fun1(-1)即可。即可。 2) 有三個或更多的選擇的一般形式是:有三個或更多的選擇的一般形式是: if (expression1) commands1 else if (expression2) commands2 else if (expression3) c

12、ommands3 else if else end 或switch I case otherwise end ) 1(),5 . 0(),2( , 0 x 1x02 1x1x f(x) 3 2 fff x x求設(shè)例 先建立先建立M文件文件fun2.m定義函數(shù)定義函數(shù)f(x),再在),再在Matlab命令窗口命令窗口 輸入輸入fun2(2),fun2(0.5), fun2(-1)即可。即可。 MATLAB(fun2) 046 62 975 1352 4321 432 421 4321 xxxx xxx xxx xxxx 程序:A=2,1,-5,1; 1,-5,0,7; 0,2,1,-1; 1,6

13、,-1,-4; b=13,-9,6,0; x=Ab; ans = -66.5556 25.6667 -18.7778 26.5556 Eg 101 Eg 101 求解線性方程組求解線性方程組 Eg 102 Eg 102 求解非線性方程求解非線性方程 附近的根在2052)( 0 3 xxxxf Z = 2.0946 (1)建立函數(shù)文件eg102.m function y = eg102(x) y = x.3-2*x-5; (2)用fzero函數(shù)求根 Z=fzero(eg102,2) Eg 103 Eg 103 求解非線性方程組求解非線性方程組 附近的數(shù)值解在)5 . 0 , 5 . 0( 0si

14、n3 . 0cos6 . 0 0cos3 . 0sin6 . 0 yxy yxx (1)建立函數(shù)文件eg103.m function q=eg103(p) x=p(1); y=p(2); q(1)=x-0.6*sin(x)-0.3*cos(y); q(2)=y-0.6*cos(x)+0.3*sin(y); (2)調(diào)用fsolve函數(shù)求方程的根 X=fsolve(eg103,0.5,0.5); Q=eg103(X) X = 0.6354 0.3734 Q = 1.0e-009 * 0.2375 0.2957 Eg 201 Eg 201 微分方程解析解微分方程解析解 用dsolve 求解: u=d

15、solve(Du=1+u2,t) 結(jié)果為: u = tan(t+C1) 的通解求解 1 2 u dt du (1) (2) 的特解求解 15)0(, 0)0( 0294 2 2 yy y dx dy dx yd 用dsolve 求解: Y= dsolve(D2y+4*Dy+29*y=0,y(0)=0,Dy(0)=15,x) 結(jié)果為: Y = 3*exp(-2*x)*sin(5*x) Eg 202 Eg 202 微分方程數(shù)值解微分方程數(shù)值解 上的數(shù)值解在求解12, 0, 1)0(, 1)0(, 0)0( 51. 0 321 321 213 312 321 yyy yyy yyy yyy yyy

16、(1)建立函數(shù)文件eg202.m function dy = eg202(t,y) dy = zeros(3,1); % a column vector dy(1) = y(2) * y(3); dy(2) = -y(1) * y(3); dy(3) = -0.51 * y(1) * y(2); (2)調(diào)用ode45函數(shù)求方程的根,(to=0,tf=12) T,Y = ode45(eg202,0 12,0 1 1); plot(T,Y(:,1),-,T,Y(:,2),-.,T,Y(:,3),.); 024681012 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0

17、.8 1 Eg 301 Eg 301 二維圖形的畫法(一)二維圖形的畫法(一) (1)在 上畫出sin(x)與cos(x)的圖形 2 , 0 用plot命令: x=linspace(0,2*pi,30); y=sin(x); z=cos(x); plot(x,y,r,x,z,b*); 01234567 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 (2)符號函數(shù)(顯函數(shù)、隱函數(shù)、參數(shù)方程)畫圖 畫出顯函數(shù) 在 -3,3 上的圖形 3 xy 用ezplot命令: ezplot(x3,-3,3); -3-2-10123 -25 -20 -15 -10 -5

18、0 5 10 15 20 25 x x3 畫出隱函數(shù) 在 -2,0.5,0,2 上的圖形 0)sin(xye x 用ezplot命令: ezplot(exp(x)+sin(x*y),-2,0.5,0,2); -2-1.5-1-0.500.5 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 x y exp(x)+sin(x y) = 0 Eg 301 Eg 301 二維圖形的畫法(二)二維圖形的畫法(二) 畫出參數(shù)方程 在 上的圖形 tytx 33 sin,cos 用ezplot命令: ezplot(cos(t).3,sin(t).3,-pi,pi); , -1-0.

19、500.51 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 x y x = cos(t).3, y = sin(t).3 做法一:用fplot命令: fplot(exp(2*x)+sin(3*x.2),-1,2); 做法二:先建立函數(shù)文件eg301.m function y=eg301(x) y=exp(2*x)+sin(3*x.2); 在用fplot命令,或ezplot命令: fplot(eg301,-1,2); 或ezplot(eg301,-1,2); 畫出函數(shù) 在 -1,2 上的圖形)3sin( 22 xey x -1-0.500.511.52 0 10 2

20、0 30 40 50 60 Eg 302 Eg 302 三維圖形的畫法(一)三維圖形的畫法(一) 畫出參數(shù)方程 x=sin(t),y=cos(t),z=t 在 上的圖形 t=0:pi/50:10*pi; plot3(sin(t),cos(t),t,b); 10, 0 (1)空間三維曲線圖形 plot3 -1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1 0 10 20 30 40 (2)空間三維曲面圖形surf,mesh,meshz 用surf畫出 在 -3,3*1,5 上的圖形 2 )(yxz x=-3:0.1:3; y=1:0.1:5; xx,yy=meshgrid(x,y);

21、 zz=(xx+yy).2; surf(xx,yy,zz); %將數(shù)據(jù)點(diǎn)所表示的曲面畫出來。-4 -2 0 2 4 1 2 3 4 5 0 20 40 60 80 Eg 302 Eg 302 三維圖形的畫法(二)三維圖形的畫法(二) 用mesh畫出 在 -3,3*1,5 上的圖形 2 )(yxz x=-3:0.1:3; y=1:0.1:5; xx,yy=meshgrid(x,y); zz=(xx+yy).2; mesh(xx,yy,zz); %將數(shù)據(jù)點(diǎn)用網(wǎng)格面表示出來。 -4 -2 0 2 4 1 2 3 4 5 0 20 40 60 80 用meshz畫出 山峰的圖形 xx,yy=meshg

22、rid(-3:0.125:3); zz=peaks(xx,yy); meshz(xx,yy,zz); %在網(wǎng)格周圍畫一個參考平面 -4 -2 0 2 4 -4 -2 0 2 4 -10 -5 0 5 10 Eg 401 Eg 401 用用matlabmatlab優(yōu)化工具箱解線性規(guī)劃(一)優(yōu)化工具箱解線性規(guī)劃(一) 求解:使問題 321 436xxxz在約束條件下的最小值 321 321 20 ,500 ,30 120 xxx xxx 用linprog求解: c=6,3,4; A=0,1,0; b=50; Aeq=1,1,1; beq=120; vlb=30,0,20; vub=; v,fval

23、=linprog(c,A,b,Aeq,beq,vlb,vub) 結(jié)果為:Optimization terminated successfully. v = 30.0000 50.0000 40.0000 fval = 490.0000 vubXvlb beqXAeq bAX tscXz . . min vubXvlb beqXAeq bAX tscXz . . min c = -5 -4 -6 A = 1 -1 1; 3 2 4; 3 2 0; b = 20; 42; 30; lb = zeros(3,1); x,fval = linprog(c,A,b,lb) 結(jié)果為:Optimizatio

24、n terminated successfully. v = 0 15.0000 3.0000 fval = -78.0000 321 21 321 321 0 ,0 ,0 3023 42423 20 xxx xx xxx xxx 例2使問題 321 645)(xxxxf 在約束條件下的最小值 Eg 401 Eg 401 用用matlabmatlab優(yōu)化工具箱解線性規(guī)劃優(yōu)化工具箱解線性規(guī)劃 (二)(二) 例:某廠每日8h的產(chǎn)量不低于1800件。為了進(jìn)行質(zhì)量控制,計(jì) 劃聘請兩種不同水平的檢驗(yàn)員。一級檢驗(yàn)員標(biāo)準(zhǔn)為:速度25件/h, 正確率98,計(jì)時工資4元/h,二級檢驗(yàn)員的標(biāo)準(zhǔn)為:速度15件 /h

25、,正確率95,計(jì)時工資3元/h,檢驗(yàn)員每檢錯一次,工廠要 損失2元。為使總檢驗(yàn)費(fèi)用最省,該工廠應(yīng)聘請一級、二級檢驗(yàn) 員各幾名? 解:設(shè)需要一級x1人,二級x2人, 則應(yīng)付工資為84x183x2 因檢驗(yàn)員出錯造成的損失為: (8252x18155x2)2= 故:目標(biāo)函數(shù)為 約束條件為 21 2432xx 21 128xx 212121 3640)128()2432( minxxxxxxz 0, 0 1800*15*8 1800*25*8 1800*15*8*25*8 21 2 1 21 xx x x xx ;150 ; 90 4535 . . 3640 min 21 21 21 xx xx ts

26、 xxz即求解: 用linprog求解: c=40,36; A=-5,-3; b=-45; Aeq=; beq=; vlb=zeros(2,1); vub=9;15; v,fval=linprog(c,A,b,Aeq,beq,vlb,vub) 結(jié)果為:Optimization terminated successfully. v = 9.0000 0.0000 fval = 360 即:只需聘用9個一級檢驗(yàn)員。 vubXvlb beqXAeq bAX tscXz . . min Eg 402 Eg 402 用用matlabmatlab優(yōu)化工具箱解非線性優(yōu)化工具箱解非線性 規(guī)劃規(guī)劃 vubXvl

27、b XCeq XG beqXAeq bAX tsXFz 0)( 0)( . . )( min求解: ; 010 05 . 1 0 . . ) 12424()( min 21 2121 21 221 2 2 2 1 1 xx xxxx xx ts xxxxxexf x (1)先建立文件eg402.m定義目標(biāo)函數(shù): function f=eg402(x) f=exp(x(1)*(4*x(1)2+2*x(2)2+4*x(1)*x(2)+2*x(2)+1; (2)再建立文件eg4021.m定義非線性約束條件: function G,Ceq=eg4021(x) G=1.5+x(1)*x(2)-x(1)-

28、x(2);-x(1)*x(2)-10; Ceq=x(1)+x(2); (3)再用fmincon求解: x0=-1;1; A=; b=; Aeq=1,1; beq=0; vlb=; vub=; x,fval=fmincon(eg402,x0,A,b,Aeq,beq,vlb,vub,eg4021) 結(jié)果為:Optimization terminated successfully. x = -1.2250 1.2250 fval = 1.8951 vubXvlb XCeq XG beqXAeq bAX tsXFz 0)( 0)( . . )( min Eg 403 Eg 403 用用matlabma

29、tlab優(yōu)化工具箱解二次規(guī)優(yōu)化工具箱解二次規(guī) 劃劃 VUBXVLB beqXAeq bAX tsXHXXz T . . c 2 1 min T (非線性中特殊的一種:目標(biāo)函數(shù)為二次函數(shù)) 例:求解問題 0, 0 22 2 . . 2262),( min 21 21 21 2 221 2 12121 xx xx xx ts xxxxxxxxf 用quadprog求解: H=1,-1;-1,2; c=-2;-6; A=1,1;-1,2; b=2;2; Aeq=; beq=; VLB=0;0; VUB=; x,z=quadprog(H,c,A,b,Aeq,beq,VLB,VUB) 結(jié)果為:Optim

30、ization terminated successfully. x = 0.6667 1.3333 z = -8.2222 用樣本的信息來推斷總體的特征叫統(tǒng)計(jì)推斷. . 統(tǒng)計(jì)分析的主要目的是由樣本推斷總體。故統(tǒng)計(jì)學(xué)的主體是 統(tǒng)計(jì)推斷 統(tǒng)計(jì)分析-統(tǒng)計(jì)推斷 參數(shù) 點(diǎn)估計(jì) 估計(jì) 區(qū)間估計(jì) 統(tǒng) u u檢驗(yàn) 計(jì) 參數(shù) t t檢驗(yàn) 推 假設(shè) F F檢驗(yàn) 斷 檢驗(yàn) 秩和檢驗(yàn) 非參 中位數(shù)檢驗(yàn) 卡方檢驗(yàn) 一元線性回歸分析的主要任務(wù)是: 1、用試驗(yàn)值(樣本值)對 0 、 1 和 作點(diǎn)估計(jì); 2、對回歸系數(shù) 0 、 1 作假設(shè)檢驗(yàn); 3、在 x= 0 x處對 y作預(yù)測,對 y作區(qū)間估計(jì). 一般地,稱由xy 10

31、 確定的模型為一元線性回歸模型一元線性回歸模型, 記為 2 10 , 0 DE xy 固定的未知參數(shù) 0 、 1 稱為回歸系數(shù),自變量 x 也稱為回歸變量. 1、 2、求回歸系數(shù)的點(diǎn)估計(jì)和區(qū)間估計(jì)、并檢驗(yàn)回歸模型:求回歸系數(shù)的點(diǎn)估計(jì)和區(qū)間估計(jì)、并檢驗(yàn)回歸模型: b, bint,r,rint,stats=regress(Y,X,alpha) 回歸系數(shù)的區(qū)間估計(jì) 殘差 用于檢驗(yàn)回歸模型的統(tǒng)計(jì)量, 有三個數(shù)值:相關(guān)系數(shù)r2、 F值、與F對應(yīng)的概率p 置信區(qū)間 顯著性水平 (缺省時為0.05) 相關(guān)系數(shù) r2越接近 1,說明回歸方程越顯著; F F1-(k,n-k-1)時拒絕 H0,F(xiàn) 越大,說明回歸

32、方程越顯著; 與 F 對應(yīng)的概率 p時拒絕 H0,回歸模型成立. Eg 501 Eg 501 用用matlabmatlab統(tǒng)計(jì)工具箱作回歸分析統(tǒng)計(jì)工具箱作回歸分析 (一元線性回歸)(一元線性回歸) 例 測16名成年女子的身高與腿長所得數(shù)據(jù)如下: 身高143145146147149150153154155156157158159160162164 腿長8885889192939395969897969899100102 以身高x為橫坐標(biāo),以腿長y為縱坐標(biāo)將這些數(shù)據(jù)點(diǎn)(xi,yi)在平面 直角坐標(biāo)系上標(biāo)出. 140145150155160165 84 86 88 90 92 94 96 98 10

33、0 102 散點(diǎn)圖 xy 10 1 1、輸入數(shù)據(jù) x=143,145,146,147,149,150,153,154,155,156,157,158,159, 160,162,164; X=ones(16,1),x; Y=88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102; 2 2、回歸分析及檢驗(yàn): b,bint,r,rint,stats=regress(Y,X) 140145150155160165 84 86 88 90 92 94 96 98 100 102 246810121416 -5 -4 -3 -2 -1 0 1 2 3 4 Res

34、idual Case Order Plot Residuals Case Number 參數(shù)參數(shù)參數(shù)估計(jì)值參數(shù)估計(jì)值置信區(qū)間置信區(qū)間 0-16.0730-33.7071 1.5612 10.71940.6047 0.8340 R2= 0.9282 F= 180.9531 p= 0.0000 tt xy071940730.16 R R2 20.92890.9289,擬合度較高,回歸模型建立成功 Eg 502 Eg 502 用用matlabmatlab作多元線性回歸分析作多元線性回歸分析 問問 題題 建立投資額模型,研究某地區(qū)實(shí)際投資額與國民生產(chǎn)總值 ( GNP ) ( GNP ) 及物 價指數(shù)

35、( PI ) ( PI ) 的關(guān)系 2.06883073.0424.5201.00001185.9195.010 1.95142954.7474.9190.96011077.6166.49 1.78422631.7401.9180.9145 992.7144.28 1.63422417.8423.0170.8679 944.0149.37 1.50422163.9386.6160.8254 873.4133.36 1.40051918.3324.1150.7906 799.0122.85 1.32341718.0257.9140.7676 756.0125.74 1.25791549.2206

36、.1130.7436 691.1113.53 1.15081434.2228.7120.7277 637.797.42 1.05751326.4 229.8110.7167 596.7 90.91 物價物價 指數(shù)指數(shù) 國民生國民生 產(chǎn)總值產(chǎn)總值 投資額投資額年份年份 序號序號 物價物價 指數(shù)指數(shù) 國民生產(chǎn)國民生產(chǎn) 總值總值 投資額投資額年份年份 序號序號 根據(jù)對未來GNPGNP及PIPI的估計(jì),預(yù)測未來投資額 該地區(qū)該地區(qū)連續(xù)連續(xù)20年的統(tǒng)計(jì)數(shù)據(jù)年的統(tǒng)計(jì)數(shù)據(jù) 基本回歸模型基本回歸模型 投資額與投資額與 GNP及物價指數(shù)間均有很強(qiáng)的線性關(guān)系及物價指數(shù)間均有很強(qiáng)的線性關(guān)系 tttt xxy 221

37、10 t 年份,年份, yt 投資額,投資額,x1t GNP, x2t 物價指數(shù)物價指數(shù) 0, 1, 2 回歸系數(shù)回歸系數(shù) x1t yt x2t yt t 對對t相互相互獨(dú)立的零均值正態(tài)隨機(jī)變量獨(dú)立的零均值正態(tài)隨機(jī)變量 x1= 596.7 637.7 691.1 756.0 799.0 873.4 944.0 992.7 1077.6 1185.9. 1326.4 1434.2 1549.2 1718.0 1918.3 2163.9 2417.8 2631.7 2954.7 3073.0 ; x2=0.7167 0.7277 0.7436 0.7676 0.7906 0.8254 0.8679

38、 0.9145 0.9601 1.0. 1.0575 1.1508 1.2579 1.3234 1.4005 1.5042 1.6342 1.7842 1.9514 2.0688 ; Y=90.9 97.4 113.5 125.7 122.8 133.3 149.3 144.2 166.4 195.0. 229.8 228.7 206.1 257.9 324.1 386.6 423 401.9 474.9 424.5 ; X=ones(20,1) x1 x2; b,bint,r,rint,stats=regress(Y,X) 用用matlab統(tǒng)計(jì)工具箱中統(tǒng)計(jì)工具箱中regress函數(shù)函數(shù)求解過

39、程:求解過程: 2468101214161820 -40 -30 -20 -10 0 10 20 30 40 Residual Case Order Plot Residuals Case Number 0 1000 2000 3000 4000 0.5 1 1.5 2 2.5 -3000 -2000 -1000 0 1000 2000 基本回歸模型的結(jié)果與分析基本回歸模型的結(jié)果與分析 ttt xxy 21 479.8596185. 0725.322 MATLAB 統(tǒng)計(jì)工具箱統(tǒng)計(jì)工具箱 參數(shù)參數(shù)參數(shù)估計(jì)值參數(shù)估計(jì)值置信區(qū)間置信區(qū)間 0322.7250224.3386 421.1114 10.6

40、1850.4773 0.7596 2-859.4790-1121.4757 -597.4823 R2= 0.9908 F= 919.8529 p=0.0000 剩余標(biāo)準(zhǔn)差剩余標(biāo)準(zhǔn)差 s=12.7164 沒有考慮時間序列數(shù)據(jù)的沒有考慮時間序列數(shù)據(jù)的滯后性影響滯后性影響 R20.9908,擬合度高,擬合度高模型優(yōu)點(diǎn)模型優(yōu)點(diǎn) 模型缺點(diǎn)模型缺點(diǎn) 可能忽視了隨機(jī)誤差存在可能忽視了隨機(jī)誤差存在自相關(guān)自相關(guān);如果;如果 存在自相關(guān)性,用此模型會有不良后果存在自相關(guān)性,用此模型會有不良后果 一維插值的定義一維插值的定義 已知已知 n+1個節(jié)點(diǎn)個節(jié)點(diǎn), 1 , 0(),(njyx jj 其中其中 j x 互不相

41、同,不妨設(shè)互不相同,不妨設(shè)), 10 bxxxa n 求任一插值點(diǎn)求任一插值點(diǎn))( * j xx 處的插值處的插值. * y 0 x 1 x n x 0 y 1 y 節(jié)點(diǎn)可視為由節(jié)點(diǎn)可視為由 )(xgy 產(chǎn)生產(chǎn)生,, g 表達(dá)式復(fù)雜表達(dá)式復(fù)雜,, 或無封閉形式或無封閉形式,, 或未知或未知.。 * x * y Eg 601 Eg 601 用用matlabmatlab解插值問題解插值問題 構(gòu)造一個構(gòu)造一個(相對簡單的相對簡單的)函數(shù)函數(shù)),(xfy 通過全部節(jié)點(diǎn)通過全部節(jié)點(diǎn), 即即 ), 1 ,0()(njyxf jj 再用再用 )(xf 計(jì)算插值,即計(jì)算插值,即).( * xfy 0 x 1

42、x n x 0 y 1 y * x * y 用用MATLABMATLAB作插值計(jì)算作插值計(jì)算 一維插值函數(shù):一維插值函數(shù): yi=interp1(x,y,xi,method) 插值方法插值方法被插值點(diǎn)被插值點(diǎn)插值節(jié)點(diǎn)插值節(jié)點(diǎn) xixi處的插處的插 值結(jié)果值結(jié)果 nearest :最鄰近插值:最鄰近插值linear : 線性插值;線性插值; spline : 三次樣條插值;三次樣條插值; cubic : 立方插值。立方插值。 缺省時:缺省時: 分段線性插值。分段線性插值。 注意:所有的插值方法都要求注意:所有的插值方法都要求x x是單調(diào)的,并且是單調(diào)的,并且xi不不 能夠超過能夠超過x的范圍。的

43、范圍。 例例1 1:在:在1-121-12的的1111小時內(nèi),每隔小時內(nèi),每隔1 1小時測量一次小時測量一次 溫度,測得的溫度依次為:溫度,測得的溫度依次為:5 5,8 8,9 9,1515,2525,2929, 3131,3030,2222,2525,2727,2424。試估計(jì)每隔。試估計(jì)每隔1/101/10小時的小時的 溫度值。溫度值。 hours=1:12; temps=5 8 9 15 25 29 31 30 22 25 27 24; h=1:0.1:12; t=interp1(hours,temps,h,spline); % (直接輸出數(shù)據(jù)將是很多的) plot(hours,temp

44、s,+,h,t,hours,temps,r:) %作圖 xlabel(Hour),ylabel(Degrees Celsius) 024681012 5 10 15 20 25 30 35 Hour Degrees Celsius 例例 2 山區(qū)地貌:山區(qū)地貌: 在某山區(qū)測得一些地點(diǎn)的高程如下表。平面區(qū)域?yàn)樵谀成絽^(qū)測得一些地點(diǎn)的高程如下表。平面區(qū)域?yàn)?1200=x=4000,1200=y=3600) 試作出該山區(qū)的地貌圖和等高線圖,并對幾種插值方法進(jìn)行比較。試作出該山區(qū)的地貌圖和等高線圖,并對幾種插值方法進(jìn)行比較。 X Y 1200 1600 2000 2400 2800 3200 3600

45、4000 1200 1130 1250 1280 1230 1040 900 500 700 1600 1320 1450 1420 1400 1300 700 900 850 2000 1390 1500 1500 1400 900 1100 1060 950 2400 1500 1200 1100 1350 1450 1200 1150 1010 2800 1500 1200 1100 1550 1600 1550 1380 1070 3200 1500 1550 1600 1550 1600 1600 1600 1550 3600 1480 1500 1550 1510 1430 130

46、0 1200 980 通過此例對最近鄰點(diǎn)插值、雙線性插值方法和雙三次插值方法的插 值效果進(jìn)行比較。 0 5000 10000 0 5000 0 1000 2000 X Y Z 0 5000 10000 0 5000 0 1000 2000 X Y Z 0 5000 10000 0 5000 0 1000 2000 X Y Z 0 5000 10000 0 5000 0 1000 2000 X Y Z 05000 0 500 1000 1500 2000 2500 3000 3500 4000 4500 05000 0 500 1000 1500 2000 2500 3000 3500 4000

47、 4500 05000 0 500 1000 1500 2000 2500 3000 3500 4000 4500 1.原始數(shù)據(jù)山區(qū)表面 2.最近鄰點(diǎn)插值山區(qū)表面 3.雙線性插值山區(qū)表面 4.雙三次插值山區(qū)表面 5.三種插值法的等高線 擬合與插值的關(guān)系擬合與插值的關(guān)系 函數(shù)插值與曲線擬合都是要根據(jù)一組數(shù)據(jù)構(gòu)造一個函數(shù)作為近似,由于近似的函數(shù)插值與曲線擬合都是要根據(jù)一組數(shù)據(jù)構(gòu)造一個函數(shù)作為近似,由于近似的 要求不同,二者的數(shù)學(xué)方法上是完全不同的。要求不同,二者的數(shù)學(xué)方法上是完全不同的。 實(shí)例:實(shí)例:下面數(shù)據(jù)是某次實(shí)驗(yàn)所得,希望得到X和 f之間的關(guān)系? x124791 21 31 51 7 f1

48、.53 .96 .611 .71 5 .61 8 .81 9 .62 0 .62 1 .1 問題:問題:給定一批數(shù)據(jù)點(diǎn),需確定滿足特定要求的曲線或曲面 解決方案:解決方案: 若不要求曲線(面)通過所有數(shù)據(jù)點(diǎn),而是要求它反映對象整體的變化趨勢,這 就是數(shù)據(jù)擬合數(shù)據(jù)擬合,又稱曲線擬合或曲面擬合。 若要求所求曲線(面)通過所給所有數(shù)據(jù)點(diǎn),就是插值問題插值問題; Eg 701 Eg 701 用用matlabmatlab解擬合問題解擬合問題 最鄰近插值、線性插值、樣條插值與曲線擬合結(jié)果:最鄰近插值、線性插值、樣條插值與曲線擬合結(jié)果: 024681012141618 0 5 10 15 20 25 已知數(shù)

49、據(jù)點(diǎn) spline 三次多項(xiàng)式插值 024681012141618 0 5 10 15 20 25 已知數(shù)據(jù)點(diǎn) linest 三次多項(xiàng)式插值 024681012141618 0 5 10 15 20 25 已知數(shù)據(jù)點(diǎn) nearest 三次多項(xiàng)式插值 MATLAB的符號計(jì)算的符號計(jì)算 所謂符號計(jì)算是指在運(yùn)算時,無須事先對變量賦值,而將所得到結(jié)果以標(biāo)準(zhǔn)的 符號形式來表示。 MathWorks公司以Maple的內(nèi)核作為符號計(jì)算引擎(Engine),依賴 Maple已有的函數(shù)庫,開發(fā)了實(shí)現(xiàn)符號計(jì)算的兩個工具箱:基本符號工具 箱和擴(kuò)展符號工具箱。 一、符號計(jì)算基礎(chǔ) 一、符號計(jì)算基礎(chǔ) (一) 定義符號變量

50、 參與符號運(yùn)算的對象可以是符號變量、符號表達(dá)式或符號矩陣。符號變量要 先定義,后引用。可以用sym函數(shù)、syms函數(shù)將運(yùn)算量定義為符號型數(shù)據(jù)。 引用符號運(yùn)算函數(shù)時,用戶可以指定函數(shù)執(zhí)行過程中的變量參數(shù);若用戶沒 有指定變量參數(shù),則使用findsym函數(shù)默認(rèn)的變量作為函數(shù)的變量參數(shù)。 1、sym函數(shù) sym函數(shù)的主要功能是創(chuàng)建符號變量,以便進(jìn)行符號運(yùn) 算,也可以用于創(chuàng)建符號表達(dá)式或符號矩陣。用sym函 數(shù)創(chuàng)建符號變量的一般格式為: x = sym(x) 其目的是將x創(chuàng)建為符號變量,以x作為輸出變量名。 每次調(diào)用該函數(shù),可以定義一個符號變量。 一、符號計(jì)算基礎(chǔ) (一) 定義符號變量 【例1】作符號

51、計(jì)算: a,b,x,y均為符號運(yùn)算量。在符號運(yùn)算前,應(yīng)先將a,b,x,y定義為符號運(yùn)算 量 1 5 byax byax 一、符號計(jì)算基礎(chǔ) (一) 定義符號變量 a=sym(a); %定義a為符號運(yùn)算量,輸出變量名為a b=sym(b); x=sym(x); y=sym(y”); x,y=solve(a*x-b*y-1,a*x+b*y-5,x,y) %以a,b為符號常數(shù),x,y為 符號變量 即可得到方程組的解: x =3/a y =2/b 一、符號計(jì)算基礎(chǔ) (一) 定義符號變量 【例2】已知一復(fù)數(shù)表達(dá)式 z=x+i*y, 試求其共軛復(fù)數(shù),并求該表達(dá)式與其共軛復(fù)數(shù) 乘積的多項(xiàng)式。 為了使乘積表達(dá)式

52、x2+y2非負(fù),這里,把變量x和y定義為實(shí)數(shù)。 x=sym(x,real); y=sym(y,real); 一、符號計(jì)算基礎(chǔ) (一) 定義符號變量 z=x+i*y; %定義復(fù)數(shù)表達(dá)式 conj(z); %求共軛復(fù)數(shù) expand(z*conj(z) %求表達(dá)式與其共軛復(fù)數(shù)乘積的多項(xiàng)式 ans = x2+y2 若要去掉x的屬性,可以使用下面語句 x = sym(x,unreal) 將x創(chuàng)建為純格式的符號變量。 一、符號計(jì)算基礎(chǔ) (一) 定義符號變量 2、syms函數(shù) syms函數(shù)的功能與sym函數(shù)類似。syms函數(shù)可以在一個語句中同時定義多 個符號變量,其一般格式為: syms arg1 arg

53、2 argN 用于將rg1, arg2,argN等符號創(chuàng)建為符號型數(shù)據(jù)。 一、符號計(jì)算基礎(chǔ) (一) 定義符號變量 (二)默認(rèn)符號變量 在數(shù)學(xué)表達(dá)式中,一般習(xí)慣于使用排在字母表中前面的字母作為變量的系數(shù), 而用排在后面的字母表示變量。例如: f=ax2+bx+c 表達(dá)式中的a,b,c通常被認(rèn)為是常數(shù),用作變量的系數(shù);而將x看作自變量。 一、符號計(jì)算基礎(chǔ) 例如,數(shù)學(xué)表達(dá)式 f=xn g=sin(at+b) 根據(jù)數(shù)學(xué)式中表示自變量的習(xí)慣,默認(rèn)a,b,c為符號常 數(shù),x為符號變量。 若在MATLAB中表示上述表達(dá)式,首先用syms 函數(shù) 定義a,b,n,t,x為符號對象。在進(jìn)行導(dǎo)數(shù)運(yùn)算時, 由于沒有指

54、定符號變量,則系統(tǒng)采用數(shù)學(xué)習(xí)慣來確定 表達(dá)式中的自變量,默認(rèn)a,b,c為符號常數(shù),x,t為符 號變量。 即 : 對函數(shù)f求導(dǎo)為:df/dx 對函數(shù)g求導(dǎo)為:dg/dt 一、符號計(jì)算基礎(chǔ) (二)默認(rèn)符號變量 為了了解函數(shù)引用過程中使用的符號變量個數(shù)及變 量名,可以用findsym函數(shù)查詢默認(rèn)的變量。該函 數(shù)的引用格式為: findsym(f,n) 說明:f為用戶定義的符號函數(shù), n為正整數(shù),表示查詢變量的個數(shù)。 n=i,表示查詢i個系統(tǒng)默認(rèn)變量。n值省略時表示 查詢符號函數(shù)中全部系統(tǒng)默認(rèn)變量。 一、符號計(jì)算基礎(chǔ) (二)默認(rèn)符號變量 【例3 】查詢符號函數(shù) f=xn g=sin(at+b) 中的系

55、統(tǒng)默認(rèn)變量。 syms a b n t x %定義符號變量 f=xn; %給定符號函數(shù) g=sin(a*t+b); findsym(f,1) %在f函數(shù)中查詢1個系統(tǒng)默認(rèn)變量 ans= x 表示f函數(shù)中查詢的1個系統(tǒng)默認(rèn)變量為x。 一、符號計(jì)算基礎(chǔ) (二)默認(rèn)符號變量 (三) 符號表達(dá)式 符號表達(dá)式由符號變量、函數(shù)、算術(shù)運(yùn)算符等組成。 符號表達(dá)式的書寫格式與數(shù)值表達(dá)式相同。例如,數(shù) 學(xué)表達(dá)式 其符號表達(dá)式為: 1+sqr(5*x)/2 注意,在定義表達(dá)式前應(yīng)先將表達(dá)式中的字符x定義 為符號變量。 2 51x 一、符號計(jì)算基礎(chǔ) (四) 生成符號函數(shù) 將表達(dá)式中的自變量定義為符號變量后,賦值給符號

56、函數(shù)名,即可生成符號 函數(shù)。例如有一數(shù)學(xué)表達(dá)式: 2 22 ),( c byax yxf 一、符號計(jì)算基礎(chǔ) 其用符號表達(dá)式生成符號函數(shù)fxy的過程為: syms a b c x y %定義符號運(yùn)算量 fxy=(a*x2+b*y2)/c2 %生成符號函數(shù) 生成符號函數(shù)fxy后,即可用于微積分等符號計(jì)算。 一、符號計(jì)算基礎(chǔ) (四) 生成符號函數(shù) 【例4】定義一個符號函數(shù) fxy=(a*x2+b*y2)/c2 ,分別求該 函數(shù)對x、y的導(dǎo)數(shù)和對x的積分。 syms a b c x y %定義符號變量 fxy=(a*x2+b*y2)/c2; %生成符號函數(shù) diff(fxy,x) %符號函數(shù)fxy對x

57、求導(dǎo)數(shù) ans =2*a*x/c2 diff(fxy, y) %符號函數(shù)fxy對y求導(dǎo)數(shù) ans =2*b*y/c2 %符號函數(shù)fxy對x求積分 int(fxy, x) ans =1/c2*(1/3*a*x3+b*y2*x) 一、符號計(jì)算基礎(chǔ) (四) 生成符號函數(shù) 二、微積分 (一) 微積分函數(shù) 1.求極限 函數(shù)limit用于求符號函數(shù)f的極限。系統(tǒng)可以根據(jù)用戶要求,計(jì)算變量從不 同方向趨近于指定值的極限值。該函數(shù)的格式及功能: 二、微積分 limit(f,x,a):求符號函數(shù)f(x)的極限值。即計(jì)算當(dāng)變量x趨近于常 數(shù)a時,f(x)函數(shù)的極限值。 limit(f,a):求符號函數(shù)f(x)的極

58、限值。由于沒有指定符號函數(shù)f (x)的自變量,則使用該格式時,符號函數(shù)f(x)的變量為函數(shù) findsym(f)確定的默認(rèn)自變量,既變量x趨近于a。 limit(f):求符號函數(shù)f(x)的極限值。符號函數(shù)f(x)的變量為函 數(shù)findsym(f)確定的默認(rèn)變量;沒有指定變量的目標(biāo)值時,系統(tǒng)默 認(rèn)變量趨近于0,即a=0的情況。 limit(f,x,a,right):求符號函數(shù)f的極限值。right表示變量x從右邊 趨近于a。 limit(f,x,a,left):求符號函數(shù)f的極限值。left表示變量x從左邊趨 近于a。 二、微積分 【例5】求極限 syms x; %定義符號變量 f=(x*(ex

59、p(sin(x)+1)-2*(exp(tan(x)-1)/sin(x)3; %確定符 號表達(dá)式 w=limit(f) %求函數(shù)的極限 w = -1/2 x eex tgxx x 3 sin 0 sin ) 1(2) 1( lim 二、微積分 2. 微分函數(shù) diff函數(shù)用于對符號表達(dá)式s求微分。該函數(shù)的一般 引用格式為: diff(s,v,n) 二、微積分 說明: 應(yīng)用diff(s)沒有指定微分變量和微分階數(shù),則系統(tǒng)按findsym函數(shù)指示的默 認(rèn)變量對符號表達(dá)式s求一階微分。 應(yīng)用diff(s,v)或diff(s,sym(v) 格式,表示以v為自變量,對符 號表達(dá)式s求一階微分。 應(yīng)用dif

60、f(s,n)格式,表示對符號表達(dá)式s求n階微分,n為正整數(shù)。 應(yīng)用diff(s,v,n)diff(s,n,v) 格式,表示以v為自變量,對符號表 達(dá)式s求n階微分。 【例6】求導(dǎo)數(shù): x = sym(x); %定義符號變量 t = sym(t); diff(sin(x2) %求導(dǎo)運(yùn)算 ans = 2*cos(x2)*x dx xd 2 sin 二、微積分 3積分函數(shù) 積分函數(shù)int(s ,v,a,b)可以對被積函數(shù)或符號表達(dá)式s求積分。其引用格式 為: int(s ,v,a,b) 說明: 應(yīng)用int(s)格式,表示沒有指定積分變量和積分階數(shù)時,系統(tǒng) 按findsym函數(shù)指示的默認(rèn)變量對被積函數(shù)

溫馨提示

  • 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

提交評論