




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第四章第四章 數(shù)值計算數(shù)值計算數(shù)值計算內(nèi)容數(shù)值計算內(nèi)容:數(shù)值計算包括數(shù)值計算包括:多項式運算多項式運算, 線性方程組求解線性方程組求解, 矩陣特征值問題矩陣特征值問題的解的解, 卷積卷積, 數(shù)據(jù)分析數(shù)據(jù)分析, 泛函指令的運用泛函指令的運用, 信號處置和系統(tǒng)分析信號處置和系統(tǒng)分析.4.1 多項式運算多項式運算多項式運算是數(shù)學(xué)中最根本的運算之一多項式運算是數(shù)學(xué)中最根本的運算之一.多項式普通可多項式普通可以表示為以表示為: f(x)=a0 xn+a1xn-1+a2xn-2+an-1x+an對于這種表示方式,很容易用一個行向量表示,即:對于這種表示方式,很容易用一個行向量表示,即: T=a0,a1,a
2、2,an-1,an在在MATLAB中中, 多項式正是用這樣一個行向量表示的多項式正是用這樣一個行向量表示的,系數(shù)是按降序陳列的系數(shù)是按降序陳列的冪冪4.1.1 多項式構(gòu)造多項式構(gòu)造多項式可以直接用向量表示多項式可以直接用向量表示, 因此因此, 構(gòu)造多項式最簡單的方法是構(gòu)造多項式最簡單的方法是直接輸入向量直接輸入向量.例例4.1.1-1 直接輸入向量構(gòu)造直接輸入向量構(gòu)造 f(x)=2x5+5x4+4x2+x+4T=2, 5, 0, 4, 1, 4;fx=poly2sym(T)函數(shù)函數(shù)poly2sym是符號工具箱中的函數(shù)是符號工具箱中的函數(shù),在用此種方式在用此種方式構(gòu)造多項式時構(gòu)造多項式時, 必需
3、把多項式各項的系數(shù)寫完好必需把多項式各項的系數(shù)寫完好, 而不而不論此項的系數(shù)能否為論此項的系數(shù)能否為0fx =2*x5+5*x4+4*x2+x+4r=1,2,3,4;T1=poly(r);y=poly2sym(T1)y_class=class(y)例例4.1.1-2 用多項式的根構(gòu)造多項式用多項式的根構(gòu)造多項式,根為根為r=1,2,3,4T1 = 1 -10 35 -50 24y = x4-10*x3+35*x2-50*x+24y_class = sym4.1.2 多項式的運算多項式的運算多項式的運算主要包括多項式的四那么運算多項式的運算主要包括多項式的四那么運算,導(dǎo)數(shù)運導(dǎo)數(shù)運算算,估值運算估
4、值運算,求根運算以及多項式的擬合等求根運算以及多項式的擬合等1 多項式的四那么運算多項式的四那么運算多項式四那么運算主要是多項式的加多項式四那么運算主要是多項式的加,減減,乘乘,除除.其中其中,多多項式的加減運算要求兩個相加項式的加減運算要求兩個相加,減的多項式的大小必需減的多項式的大小必需相等相等,此時加此時加,減才有效減才有效. 當兩個相加當兩個相加,減的多項式階次不減的多項式階次不同時必需經(jīng)過補同時必需經(jīng)過補0使其一樣使其一樣.加加/減減-+/-乘/除-conv, deconvT=deconv(T1, T3)T, r=deconv(T1,T3)商多項式商多項式余式余式T3為分母T1=2,
5、 5, 0, 4, 1, 4;T2=0, 0, 5, 1, 3, 2;T3=5, 1, 3, 2; % 除法運算中分母多項式第一個系數(shù)不能為0T=T1+T2; % 必需是同維的才干相加T_add=poly2sym(T)T=T1-T2;T_sub=poly2sym(T)T=conv(T1,T2); % 乘法不要求同維T_mul=poly2sym(T)A_coe, A_r=deconv(T1,T3);T_coe=poly2sym(A_coe)T_rem=poly2sym(A_r) 例例4.1.1-3 多項式的加減乘除運算多項式的加減乘除運算f1(x)=2x5+5x4+4x2+x+4, f2(x)=
6、5x3+x2+3x+2例例4.1.1-4 多項式求值多項式求值,求上式求上式f1(x)在在x=0.5處的函數(shù)值處的函數(shù)值T1=2,5,0,4,1,4;x=0.5;y=polyval(T1,x)y = 5.87503 多項式的導(dǎo)數(shù)運算多項式的導(dǎo)數(shù)運算-polyder例例4.1.1-6 求多項式求多項式f1(x)=2x5+5x4+4x2+x+4的導(dǎo)數(shù)的導(dǎo)數(shù) T1=2,5,0,4,1,4; h=polyder(T1); poly2sym(h)2 多項式求根多項式求根-roots例例4.1.1-5 求多項式求多項式f1(x)=2x5+5x4+4x2+x+4的根的根 T1=2, 5, 0, 4, 1,
7、4; root=roots(T1);root= -2.7709 0.5611 + 0.7840i 0.5611 - 0.7840i -0.4257 + 0.7716i -0.4257 - 0.7716i10*x4+20*x3+8*x+14 擬合和插值擬合和插值-polyfit, interp1例例4.1.1-7 對以下數(shù)據(jù)對對以下數(shù)據(jù)對(x0,y0)求三次擬合多項式并繪求三次擬合多項式并繪圖圖. x0=0:0.1:1; y0=-0.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58, 3.45,5.35,9.22;p = polyfit(x0, y0, n);p,
8、s = polyfit(x0, y0, n);x0,y0-給定數(shù)據(jù)對給定數(shù)據(jù)對n-擬合出的多項式次數(shù)擬合出的多項式次數(shù)p-多項式向量多項式向量s-偏向信息偏向信息yi=interp1(x0, y0, xi, cubic);xi, yi-得到的新的插值點得到的新的插值點cubic-插值方式插值方式x0=0:0.1:1;y0=-0.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22;n=3; % 設(shè)定擬合次數(shù)為設(shè)定擬合次數(shù)為3p,s=polyfit(x0,y0,n); % 得到擬合多項式向量和相關(guān)偏向信得到擬合多項式向量和相關(guān)偏向信息息 x
9、x=0:0.01:1; yy=polyval(p,xx); % 按擬合曲線計算采樣值按擬合曲線計算采樣值n1=6; % 設(shè)定擬合次數(shù)為設(shè)定擬合次數(shù)為6p1,s1=polyfit(x0,y0,n1);yy1=polyval(p1,xx);plot(xx,yy,-b,xx,yy1,-m,x0,y0,.r,MarkerSize,20);y3=polyval(p,0.5); y6=polyval(p1,0.5);text(0.5, y3-0.3, n=3);text(0.5, y6+0.2, n=6); y=51.48x3 -77.74x2+35.06x-0.20y=348.21x6-1060.23x
10、5+1297.68x4-758.90 x3+ 181.00 x2 + 1.00 x+0.48擬合只能在給定數(shù)據(jù)所限定的區(qū)間內(nèi)運用擬合只能在給定數(shù)據(jù)所限定的區(qū)間內(nèi)運用, 不要恣意向外拓展不要恣意向外拓展例例4.1.1-8 按上例所給數(shù)據(jù)研討插值按上例所給數(shù)據(jù)研討插值, 并察看插值和擬合的區(qū)別并察看插值和擬合的區(qū)別.x0=0:0.1:1;y0=-0.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22;xi=0:0.02:1;yi=interp1( x0, y0, xi, cubic ); subplot(1,2,1);plot(xi, yi
11、, -b, x0, y0, .r, MarkerSize, 20);xlabel(x), ylabel(y);p,s=polyfit(x0,y0,3); xx=0:0.01:1; yy=polyval(p,xx); subplot(1,2,2);plot(xx, yy, -r, x0, y0, .r, MarkerSize, 20);xlabel(x); ylabel(y);插值插值擬合擬合插值方式插值方式:linear-線性插值線性插值nearest-最近插值最近插值cubic-三次多項式插值三次多項式插值spline-樣條插值樣條插值pchip-分段三次分段三次Hermite插值插值v5c
12、ubic-MATLAB 5.0版的三次多項式插值版的三次多項式插值.擬合和插值的區(qū)別擬合和插值的區(qū)別:曲線擬合是研討如何尋覓曲線擬合是研討如何尋覓“平滑平滑曲線最好地表現(xiàn)帶噪聲的曲線最好地表現(xiàn)帶噪聲的“丈量數(shù)據(jù)丈量數(shù)據(jù),但并不要求擬但并不要求擬合曲線經(jīng)過這些合曲線經(jīng)過這些“測試數(shù)據(jù)點測試數(shù)據(jù)點.插值是在認定所給數(shù)插值是在認定所給數(shù)據(jù)完全正確的情況下?lián)耆_的情況下,研討如何平滑地估算出研討如何平滑地估算出“基準數(shù)基準數(shù)據(jù)之間其他點的函數(shù)值據(jù)之間其他點的函數(shù)值,因此插值一定經(jīng)過因此插值一定經(jīng)過“基準數(shù)基準數(shù)據(jù)據(jù)通俗地講通俗地講, 擬合就是由知點得到一條曲線擬合就是由知點得到一條曲線, 使該曲線
13、最使該曲線最能反映點所代表的規(guī)律能反映點所代表的規(guī)律.比如做歐姆定理的實驗的時候比如做歐姆定理的實驗的時候,由于實驗中存在誤差由于實驗中存在誤差,最后擬合得到的曲線是一條直線最后擬合得到的曲線是一條直線,而且一定只需部分點落在擬合的直線上而且一定只需部分點落在擬合的直線上,但此時該直線但此時該直線和測試點的方差最小和測試點的方差最小.由擬合直線的斜率就可以知道電由擬合直線的斜率就可以知道電阻的阻值阻的阻值.擬合是探測事物變化規(guī)律的方法擬合是探測事物變化規(guī)律的方法.插值就是根據(jù)函數(shù)上某些知點插值就是根據(jù)函數(shù)上某些知點(或?qū)嶒灁?shù)據(jù)或?qū)嶒灁?shù)據(jù)),按一定規(guī)按一定規(guī)律律(插值方法插值方法)尋求未知的點尋
14、求未知的點,比如知一個常用對數(shù)比如知一個常用對數(shù)y=log(x)表表,是按照是按照x=0.1:0.1:10制表的制表的,假設(shè)按假設(shè)按知數(shù)據(jù)求知數(shù)據(jù)求y=log(2.897)就可以用插值得到就可以用插值得到.表制得表制得越密越密,插值越準確插值越準確例例4.1.1-9 知經(jīng)過實驗得到電壓和電流的數(shù)值如下:知經(jīng)過實驗得到電壓和電流的數(shù)值如下:i0=0:0.5:10;v0=0,98,202,306,395,506,592,708,789,890,1009,1108,1186, 1310,1,1510,1601,1716,1782,1920,2019;按一次按一次,二次二次,三次多項式對數(shù)值關(guān)系進展擬
15、合三次多項式對數(shù)值關(guān)系進展擬合闡明:闡明:為保證較好的擬合效果,多項式階數(shù)要獲得適當,過為保證較好的擬合效果,多項式階數(shù)要獲得適當,過低,殘差較大,過高,擬合模型將包含噪聲影響,通低,殘差較大,過高,擬合模型將包含噪聲影響,通常要保證擬合階數(shù)小于數(shù)據(jù)對的數(shù)目。常要保證擬合階數(shù)小于數(shù)據(jù)對的數(shù)目。i0=0:0.5:10;v0=0,98,202,306,395,506,592,708,789,890,1009,1108, . 1186,1310,1,1510,1612,1716,1782,1920,2019;n1=1; p1,s=polyfit(i0,v0,n1); n2=2; p2,s=polyf
16、it(i0,v0,n2);n3=3; p3,s=polyfit(i0,v0,n3);ii=0:0.1:10;v1=polyval(p1,ii);v2=polyval(p2,ii);v3=polyval(p3,ii);subplot(1,3,1),plot(ii,v1,-b,i0,v0,.r,MarkerSize,8), xlabel(一次擬合一次擬合);subplot(1,3,2),plot(ii,v2,-b,i0,v0,.r,MarkerSize,8), xlabel(二次擬合二次擬合);subplot(1,3,3),plot(ii,v3,-b,i0,v0,.r,MarkerSize,8),
17、 xlabel(三次擬合三次擬合);p1=201.00, -2.89P2=0.31, 197.90, 2.02P3=0.03, -0.10, 199.49, 0.85p1=201.00,-2.89P2=0.31, 197.90, 2.02P3=0.03, -0.10, 199.49, 0.85對于含對于含n個未知數(shù)的個未知數(shù)的n個方程構(gòu)成的方程組個方程構(gòu)成的方程組Ax=b, 在線性代數(shù)教在線性代數(shù)教科書中科書中,最常引見的解法有最常引見的解法有:Cramer法法;逆陣法逆陣法, 即即x=A-1b;高斯消高斯消元法元法; LU法法 對于維數(shù)不高對于維數(shù)不高,條件數(shù)不大的矩陣條件數(shù)不大的矩陣,以上
18、四種所得結(jié)果不會有明顯以上四種所得結(jié)果不會有明顯的差別的差別.但前三種解法的更多的意義在實際上但前三種解法的更多的意義在實際上,而不在實踐的數(shù)值而不在實踐的數(shù)值計算上計算上.在在MATLAB中中,方程采用方程采用LU法求解法求解,并且出于算法穩(wěn)定性并且出于算法穩(wěn)定性的思索的思索,行列式和逆的計算也都是在行列式和逆的計算也都是在LU分解的根底上進展的分解的根底上進展的MATLAB中的四條指令中的四條指令:L, U, P=lu(A)-矩陣的矩陣的LU分解分解,使使LU=PA. 多種格式多種格式.det(A)-求矩陣求矩陣A的行列式的行列式, 它由它由detA=detUuii 算得算得inv(A)-
19、求矩陣求矩陣A的逆的逆, 由由A-1=U-1L-1P算得算得x=Ab-除法指令求方程的解除法指令求方程的解(對恰定方程對恰定方程, 采用采用LU法執(zhí)行法執(zhí)行)4.2.1 方程組求解方程組求解4.2 線性方程組的解線性方程組的解對于方程組對于方程組Ax=b, 采用采用x=Ab計算,假設(shè)方程組為計算,假設(shè)方程組為yC=d, 要運用右除,即指令為要運用右除,即指令為y=d/CAx=bxA=byC=dx=Abx=b/Ay=d/C例例4.2.1-1 解以下方程組解以下方程組2x1+2x2+3x3=34x1+7x2+7x3=1-2x1+4x2+5x3=-7A=2, 2, 3; 4, 7, 7; -2, 4
20、, 5, b=3; 1; -7x=Ab, y=b/A求解方程時求解方程時,盡量不要運用指令盡量不要運用指令inv(A)*b進展進展,它不僅計算速度它不僅計算速度沒有除法快沒有除法快,而且計算精度也沒除法高而且計算精度也沒除法高.此外此外,除法還適用于除法還適用于“超超定和定和“欠定方程欠定方程x = 9.00 -36.00 31.00y = 9.00 -36.00 31.00方程組的解的三種情況方程組的解的三種情況:對于方程對于方程Ax=b, AAx=b, A為為AmAmn n矩陣矩陣, ,有三種情況有三種情況: : 當當m=nm=n時時, ,此方程成為此方程成為 恰定恰定 方程方程, ,求解
21、準確解求解準確解 當當mnmn時時, ,此方程成為此方程成為“超定方程超定方程, ,尋求最小二乘解尋求最小二乘解 ( (直線擬直線擬合合) ) 當當mnmn時此時無解時此時無解,但適用中可以求最小二乘解即但適用中可以求最小二乘解即:方程解方程解 (AA)x=A b x=(AA)-1Ab- 求逆法求逆法 x=Ab - matlab用最小二乘法找一個近似解用最小二乘法找一個近似解.x1+2x2=1 2x1+3x2=23x1+4x2=3例例4.2.1-3 求以下超定方程的解求以下超定方程的解 求逆法:求逆法:x=inv(A*A)*A*b 運用運用Ab 的方式的方式A=1,2;2,3;3,4;b=1;
22、2;3;x1=inv(A*A)*A*b;x2=Abx1 = 1.00 0.00 x2 = 1.00 0 3) 3) 欠定方程欠定方程當方程數(shù)少于未知量個數(shù)時當方程數(shù)少于未知量個數(shù)時, ,即不定情況即不定情況, ,有無窮多個解存在有無窮多個解存在. .matlab可求出兩個解:可求出兩個解:a.用除法求的解用除法求的解x是具有最多零元素的解是具有最多零元素的解b.具有最小長度或范數(shù)的解具有最小長度或范數(shù)的解,這個解是基于偽逆這個解是基于偽逆pinv求得的求得的.例例4.2.1-4求以下欠定方程組的解求以下欠定方程組的解x1+2x2+3x3=12x1+3x2+4x3=2A=1,2,3;2,3,4;
23、b=1;2;x1=Ab;x2=pinv(A)*bx1 = 1 0 0 x2 = 0.8333 0.3333 -0.16674.2.2 奇特值分解和矩陣構(gòu)造奇特值分解和矩陣構(gòu)造相應(yīng)的相應(yīng)的MATLAB指令如下指令如下:U,S,V=svd(A)-矩陣的奇特值分解三對組陣,使矩陣的奇特值分解三對組陣,使A=USVTnorm(A,flag)-計算矩陣計算矩陣A的范數(shù),范數(shù)類型由的范數(shù),范數(shù)類型由flag指定指定.cond(A)-計算矩陣計算矩陣A的條件數(shù)的條件數(shù).pinv(A)-求矩陣的廣義逆求矩陣的廣義逆flag-1, 2, inf, fro4.2.3 線性二乘問題的解線性二乘問題的解對于超定方程對
24、于超定方程,求其最小二乘解有三種方法:求其最小二乘解有三種方法:正那么方程法得解正那么方程法得解x=(A A)-1A b, 數(shù)值精度差數(shù)值精度差廣義逆法得解廣義逆法得解x=A+b, 所得解可靠所得解可靠.用矩陣除法得解用矩陣除法得解x=Ab.可靠性稍差,但速度快可靠性稍差,但速度快.例例4.2.3-1 對于超定方程對于超定方程y=Ax, 進展三種解法比較進展三種解法比較.(1) 生成矩陣生成矩陣A及及y, 并用三種方法求解并用三種方法求解A=gallery(5), A(:,1)=; y=1.7, 7.5, 6.3, 0.83, -0.082;x=inv(A*A)*A*y, xx=pinv(A)
25、*y, xxx=Ayx = 3.4811 5.1595 0.9534 -0.0466xx = 3.4759 5.1948 0.7121 -0.1101xxx = 3.4605 5.2987 0 -0.2974由于陣缺一個列秩由于陣缺一個列秩,除法給出的最小二乘除法給出的最小二乘解就只需三個非零元解就只需三個非零元素素.它是只需三個非零它是只需三個非零元素的一切最小二乘元素的一切最小二乘解中范數(shù)最小的解中范數(shù)最小的Gallery-MATLAB 設(shè)置設(shè)置的特殊矩陣的特殊矩陣. (2) 計算三個解的范數(shù)計算三個解的范數(shù)nx=norm(x), nxx=norm(xx), nxxx=norm(xxx)n
26、x = 6.2968nxx = 6.2918nxxx = 6.3356用廣義逆所得的最小二乘范數(shù)最小(3) 比較三種解法的方程誤差比較三種解法的方程誤差e=norm(y-A*x), ee=norm(y-A*xx), eee=norm(y-A*xxx)e = 0.6986ee = 0.0474eee = 0.0474誤差的平方根最大,精度最差誤差的平方根最大,精度最差4.2.4 特征值分解和矩陣函數(shù)特征值分解和矩陣函數(shù)涉及矩陣特征值分解的常用的涉及矩陣特征值分解的常用的MATLAB指令如下指令如下:d = eig(A)-計算矩陣計算矩陣A的特征值的特征值,以向量方式存放以向量方式存放V,D=ei
27、g(A)-計算矩陣的特征向量計算矩陣的特征向量V和特征值對角陣和特征值對角陣D,使使A*V=V*DVR,DR=cdf2rdf(VC, DC)-把復(fù)數(shù)對角形轉(zhuǎn)化成實數(shù)塊對角形把復(fù)數(shù)對角形轉(zhuǎn)化成實數(shù)塊對角形.VC,DC=rsf2csf(VR, DR)-把實數(shù)塊對角形轉(zhuǎn)換成復(fù)數(shù)對角形把實數(shù)塊對角形轉(zhuǎn)換成復(fù)數(shù)對角形V, J=jordan(A)-jordan分解分解,使使A*V=V*J, J是對角陣是對角陣c=condeig(A)-計算各特征值的條件數(shù)計算各特征值的條件數(shù)V,D,C=condeig(A)-相當于相當于V, D=eig(A)和和c=condeig(A)兩兩條指令條指令例例4.2.4-1 驗
28、證驗證det(A)=iA=2,-1,-1; 3,4,-2; 3,-2,4det(A)d=eig(A)ans = 60d = 2.0000 + 2.4495i 2.0000 - 2.4495i 6.0000 d(1)*d(2)*d(3)ans = 60.0000行列式行列式特征值特征值% 矩陣行列式等于其一切特征值的積矩陣行列式等于其一切特征值的積4.3 數(shù)據(jù)分析函數(shù)數(shù)據(jù)分析函數(shù)(1) 假設(shè)輸入宗量假設(shè)輸入宗量x是向量是向量,那么不論是行向量還是列向量那么不論是行向量還是列向量,運算是運算是對整個向量進展的對整個向量進展的(2) 假設(shè)輸入宗量假設(shè)輸入宗量x是二維數(shù)組,那么指令運算是按列進展的是二
29、維數(shù)組,那么指令運算是按列進展的MATLAB在進展數(shù)據(jù)分析時的商定在進展數(shù)據(jù)分析時的商定:4.3.1 隨機數(shù)發(fā)生器和統(tǒng)計分析指令隨機數(shù)發(fā)生器和統(tǒng)計分析指令函數(shù)函數(shù)含義含義rand(m, n)產(chǎn)生產(chǎn)生mxn維的維的0,1區(qū)間均勻分布隨機數(shù)組區(qū)間均勻分布隨機數(shù)組randn(m,n)產(chǎn)生產(chǎn)生mxn維的均值為維的均值為0標準差為標準差為1的正態(tài)分布隨的正態(tài)分布隨機數(shù)組機數(shù)組min(x)對矩陣各列分別求最小值對矩陣各列分別求最小值max(x)對矩陣各列分別求最大值對矩陣各列分別求最大值median(x)對矩陣各列分別求中位數(shù)對矩陣各列分別求中位數(shù)mean(x)對矩陣各列分別求均值對矩陣各列分別求均值st
30、d(x)對矩陣各列分別求標準差對矩陣各列分別求標準差var(x)對矩陣各列分別求方差對矩陣各列分別求方差C=conv(x)給出矩陣各列的協(xié)方差陣給出矩陣各列的協(xié)方差陣P=corrcoef(x) 給出矩陣各列間的相關(guān)系數(shù)給出矩陣各列間的相關(guān)系數(shù)例例4.3-1 根本統(tǒng)計例如根本統(tǒng)計例如randn(state,0); A=randn(1000,4);AMAX=max(A), AMIN=min(A)AMED=median(A);AMEAN=mean(A); ASTD=std(A)知知A=1,2,3;4,5,6;7,8,9, 演示演示max, min, median, mean, std, var, c
31、onv, corrcoef各列最大各列最大,最小值:最小值:max(A), min(A)各行最大各行最大,最小值:最小值:max(A), min(A)各列中間值:各列中間值:median(A)各列平均值:各列平均值:mean(A)各列方差各列方差,規(guī)范差:規(guī)范差: var(A), std(A)A= 1, 2, 3; 4, 5, 6; 7, 8, 9 7 8 94.3.2 差分和累計指令差分和累計指令 函數(shù)函數(shù)含義含義del2(U,hx,hy)五點五點Laplaciandiff(X, m, n)沿第沿第n維求維求m次差分次差分 (二維:二維:n=1; 列列,n=2,行行)DZx,DZy=grad
32、ient(z,dx,dy)對對Z求求x,y方向梯度方向梯度prod(X, n)沿第沿第n維求乘積維求乘積sum(X, n)沿第沿第n維求和維求和trapz(x,Y,n)用梯形法沿第用梯形法沿第n維求函數(shù)關(guān)于自變量維求函數(shù)關(guān)于自變量x的積分的積分cumprod(X,n)沿第沿第n維求累計乘積維求累計乘積cumsum(X, n)沿第沿第n維求累計和維求累計和cumtrapz(x,Y,n)用梯形法沿第用梯形法沿第n維求函數(shù)維求函數(shù)Y關(guān)于關(guān)于x的累計積分的累計積分XS,KK=sort(X,n) 沿第沿第n維對維對X元素按模增大排列元素按模增大排列diff, trapz, cumtrapz指令的演示指令
33、的演示a=1,2,3,4,5; b=a, a+1, a+2,a+3diff(a)=diff(a,1)=1,1,1,1diff(b)=1,1,1,1 ; 1,1,1,1 ; 1,1,1,1 ; 1,1,1,1trapz(b)=12 16 20 24cumtrapz(b) 0 0 0 01.50 2.50 3.50 4.504.00 6.00 8.00 10.007.50 10.50 13.50 16.5012.00 16.00 20.00 24.001 2 3 42 3 4 53 4 5 64 5 6 75 6 7 8例例4.3.2-1求求1+2+3+100以及以及50! x=1:1:100;s
34、um_x=sum(x);sum_x = 5050a=1:1:50;prod_a=prod(a)prod_a = 3.0414e+064cumsum, cumprod的用法的用法上兩個函數(shù)分別是求向量的累計和和累計乘積上兩個函數(shù)分別是求向量的累計和和累計乘積.假設(shè)假設(shè)a=1:1:n, 那那么么cumsum(a)=1, 1+2, 1+2+3, ., 1+2+3+ncumprod(a)=1, 1*2, 1*2*3, , 1*2*3*n例例4.3.2-1 求求f(x)=3x2在區(qū)間在區(qū)間0,2的積分的積分dt=0.001;t=(0:dt:2);y=3*t.2;s1=dt*sum(y)s2=dt*tra
35、pz(y)s=dt*cumsum(y);s3=s(end)s=dt*cumtrapz(y);s4=s(end)matlab還有更精良的積分指令還有更精良的積分指令: quad, quda8s1 = 8.0060s2 = 8.000001s3 = 8.0060s4 = 8.0000014.4 MATLAB泛函指令泛函指令在在MATLAB中中,凡以函數(shù)為輸入宗量的指令凡以函數(shù)為輸入宗量的指令,都被統(tǒng)稱為泛函指令都被統(tǒng)稱為泛函指令. 最常見的有最常見的有:z=fzero(fun,x0)-求一元函數(shù)零點指令的最簡單格式求一元函數(shù)零點指令的最簡單格式x=fsolve(fun,x0)-解非線性方程組的最簡
36、單格式解非線性方程組的最簡單格式x=fminbnd(fun,x1,x2)-求函數(shù)在區(qū)間求函數(shù)在區(qū)間(x1,x2)中極小值的指令中極小值的指令 最簡格式最簡格式x=fminsearch(fun,x0)-單純形法求多元函數(shù)極值點指令的最單純形法求多元函數(shù)極值點指令的最簡格式簡格式.x=fminunc(fun,x0)-擬牛頓法求多元函數(shù)極值點指令的最簡擬牛頓法求多元函數(shù)極值點指令的最簡格式格式a=lsqnonlin(fun,a0)-解非線性最小二乘問題指令的最簡格式解非線性最小二乘問題指令的最簡格式.q=quad(fun,a,b)-采用遞推自順應(yīng)采用遞推自順應(yīng)simpson法計算積分法計算積分q=q
37、uadl(fun,a,b)-采用遞推自順應(yīng)采用遞推自順應(yīng)Lobatto法求數(shù)值積分法求數(shù)值積分SS=dblquad(fun,inmin,inmax,outmin,outmax)-二重閉環(huán)數(shù)二重閉環(huán)數(shù)值積分值積分t,YY=ode45(fun,tspan,Y0)-采用采用4,5階階Runge-Kutta方程解方程解算算ODE初值問題初值問題指令中被處置的函數(shù)指令中被處置的函數(shù)fun,可以取可以取:字符串表達式字符串表達式,內(nèi)聯(lián)函數(shù)內(nèi)聯(lián)函數(shù), M函數(shù)函數(shù)文件的函數(shù)句柄文件的函數(shù)句柄4.4.1 求函數(shù)零點求函數(shù)零點對于恣意函數(shù)對于恣意函數(shù)f(x)=0,零點情況復(fù)雜零點情況復(fù)雜,沒有一個通用解法沒有一個
38、通用解法.普普通來說通來說,零點的數(shù)值計算過程是零點的數(shù)值計算過程是:先猜測一個初始零點或先猜測一個初始零點或該零點所在的區(qū)間該零點所在的區(qū)間,然后經(jīng)過計算然后經(jīng)過計算,使猜測值不斷準確化使猜測值不斷準確化,或使猜測區(qū)間不斷收縮或使猜測區(qū)間不斷收縮,直到到達預(yù)定的精度直到到達預(yù)定的精度,終止計算終止計算.求函數(shù)的零點的步驟為求函數(shù)的零點的步驟為:(1) 利用利用matlab作圖指令獲取初步近似值作圖指令獲取初步近似值詳細做法詳細做法: 先確定一個零點能夠存在的自變量區(qū)間先確定一個零點能夠存在的自變量區(qū)間,然后利用然后利用plot指令畫出指令畫出f(x)在該區(qū)間中的圖形在該區(qū)間中的圖形,察看察看
39、f(x)與橫軸的交點坐標與橫軸的交點坐標,也可以也可以用用zoom對交點處部分放大再讀數(shù)對交點處部分放大再讀數(shù).借助借助ginput指令獲得更準確的指令獲得更準確的交點坐標值交點坐標值(2) 利用利用fzero指令求準確解指令求準確解z=fzero(fun,x0)-求一元函數(shù)零點指令的最簡格式求一元函數(shù)零點指令的最簡格式z, f_z, exitflag=fzero(fun,x0,options,p1,p2,)-最完好格式最完好格式 闡明:闡明: 由于由于fzero是根據(jù)函數(shù)能否越橫軸來決議零點的是根據(jù)函數(shù)能否越橫軸來決議零點的,因此本程序無法確定函數(shù)因此本程序無法確定函數(shù)曲線僅觸及橫軸和不穿越
40、的零點曲線僅觸及橫軸和不穿越的零點 第二個輸入量第二個輸入量x0表示零點的初始猜測表示零點的初始猜測.他可以是標量或二元向量他可以是標量或二元向量.當當x0取標取標量時量時,該指令將在它兩側(cè)尋覓一個與之最接近的零點該指令將在它兩側(cè)尋覓一個與之最接近的零點;當取二元向量當取二元向量a,b時時,該該指令將在區(qū)間指令將在區(qū)間a,b內(nèi)尋覓一個零點內(nèi)尋覓一個零點. 輸入宗量輸入宗量options是優(yōu)化迭代采用的參數(shù)是優(yōu)化迭代采用的參數(shù).P1,P2是向函數(shù)是向函數(shù)fun傳送的參數(shù)傳送的參數(shù). z是所求零點的自變量值是所求零點的自變量值. f_z是函數(shù)值是函數(shù)值,exitflag闡明程序終止計算的條件闡明程
41、序終止計算的條件.假設(shè)假設(shè)exitflag0, 闡明找到零點后退出闡明找到零點后退出例例4.4.1-1 求函數(shù)求函數(shù)f(x)=2x-10 x的零點的零點(1) 繪制函數(shù)圖形繪制函數(shù)圖形x=-10:0.1:10;y=2.x-10*x; hold on;plot(x, y, r, LineWidth, 5);plot(x, zeros(size(x), k); % 便于查看零便于查看零點點xlabel(x), ylabel(y);title(曲線方程式為:曲線方程式為:y=2x-10*x);(2) 獲取初步近似解獲取初步近似解zoom on;tt,yy=ginput(2);zoom off;fun
42、c=2x-10*x;x01, err1, exitflag1=fzero(func, tt(1), ); x02, err2, exitflag2=fzero(func, tt(2), );(3) 利用利用fzero指令求準確解指令求準確解str=方程的根為方程的根為: x1= , num2str(x01), 和和 x2= , num2str(x02);disp(str);4.4.2 求函數(shù)極值點求函數(shù)極值點許多科學(xué)研討和工程計算問題都可以歸結(jié)為一個極值問題許多科學(xué)研討和工程計算問題都可以歸結(jié)為一個極值問題,如能量最小,時如能量最小,時間最短間最短,最正確擬合最正確擬合,最短途徑等最短途徑等.
43、又由于又由于f(x)的極小值問題等價于的極小值問題等價于-f(x)的極大的極大值問題值問題,所以所以matlab只需處置極小值的指令只需處置極小值的指令確切地說確切地說,這里討論的只是這里討論的只是“局域極值問題局域極值問題.“全域最小問題全域最小問題要復(fù)雜得多要復(fù)雜得多.至今沒有一個系統(tǒng)性的方法可求解普通的至今沒有一個系統(tǒng)性的方法可求解普通的“全域最全域最小問題小問題.對于一元二元函數(shù)對于一元二元函數(shù),作圖察看對確定全域最小值有很作圖察看對確定全域最小值有很好的運用價值好的運用價值.但更多元的函數(shù)但更多元的函數(shù),就很難運用作圖法就很難運用作圖法.matlab求函數(shù)極值的三條指令求函數(shù)極值的三
44、條指令x, fval, exitflag, output=fminbnd(fun,x1,x2,opt,p1,p2,)-求一元函數(shù)在區(qū)間求一元函數(shù)在區(qū)間(x1,x2)中極小值的指令的最完好格式中極小值的指令的最完好格式x, fval, exitflag, output=fminsearch(fun,x0,opt,p1,p2,)-單純形法求多元函數(shù)極值點指令的最完好格式單純形法求多元函數(shù)極值點指令的最完好格式x,fval,exitflag,output,grad,hessian=fminunc(fun,x0,opt,p1,p2,)-擬牛頓法求多元函數(shù)極值點指令的最完好格式擬牛頓法求多元函數(shù)極值點指
45、令的最完好格式例例4.4.2-1 求例求例4.4.1-1 中的函數(shù)的最小值中的函數(shù)的最小值(1) 函數(shù)采用字符串表達式函數(shù)采用字符串表達式func=2x-10*x;x1=0,x2=8; % 經(jīng)過察看經(jīng)過察看, 發(fā)現(xiàn)最小值發(fā)現(xiàn)最小值在此區(qū)間在此區(qū)間Xmin,Ymin=fminbnd(func,x1,x2)Xmin = 3.8507Ymin = -24.0800(2) 函數(shù)采用函數(shù)采用M文件函數(shù)的句柄文件函數(shù)的句柄% M文件內(nèi)容,保管為文件內(nèi)容,保管為func.mfunction y=f(x)y=2x-10*x; % M文件內(nèi)容文件內(nèi)容x1=0; x2=8;Hf=func;Xmin,Ymin=fminbnd(Hf,x1,x2)4.4.3 數(shù)值積分數(shù)值積分數(shù)值積分有閉型和開型算法之分兩者的區(qū)別在于:能否需求計數(shù)值積分有閉型和開型算法之分兩者的區(qū)別在于:能否需求計算積分區(qū)間端點處的函數(shù)值算積分區(qū)間端點處的函數(shù)值matlab中僅提供閉型數(shù)值積分指令中僅提供閉型數(shù)值積分指令:q=quad(fun, a, b, tol, trace, p1, p2, )-采用遞推自采用遞推自 順應(yīng)順應(yīng)Simpson法計算積分法計算積分q=qudal(fun, a, b, tol, trace, p1, p2,)-采用遞推自采用遞推自順應(yīng)順應(yīng)Lobatlo法求數(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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國智能變頻恒壓供水機組項目投資可行性研究報告
- 2025-2030年中國智能行駛記錄儀項目投資可行性研究分析報告
- 學(xué)生宿舍社會效益分析
- 鄉(xiāng)村振興產(chǎn)業(yè)基地項目背景
- 鄉(xiāng)村振興產(chǎn)業(yè)基地建設(shè)的意義
- 數(shù)創(chuàng)產(chǎn)業(yè)園可行性總結(jié)與建議
- 排水防澇設(shè)施功能提升的技術(shù)方案
- 2024年花瓶市場調(diào)研報告
- 勘探報告和勘察報告區(qū)別
- 個人鐵罐轉(zhuǎn)讓合同范本
- 廣西版四年級下冊美術(shù)教案
- 人工智能導(dǎo)論-課件 第1章 人工智能的前世今生
- 當那一天來臨混聲合唱譜
- 制程工程師年終總結(jié)匯報
- 《換熱器及換熱原理》課件
- 高中生安全教育主題班會課件
- 住戶調(diào)查輔助調(diào)查員培訓(xùn)教學(xué)課件
- 數(shù)字營銷基礎(chǔ)PPT完整全套教學(xué)課件
- 園林植物環(huán)境PPT完整全套教學(xué)課件
- 跨境電商B2B數(shù)據(jù)運營高職PPT全套完整教學(xué)課件
- 教師師德和專業(yè)發(fā)展課件
評論
0/150
提交評論