已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第4章 MATLAB 數(shù)值計算(2),MATLAB 7.X程序設(shè)計,2/47,4.4 多項式函數(shù),4.4.1 多項式的表示 MATLAB中多項式的表示方法 :,例如:行向量 p=1 -12 0 25 116對應(yīng)的多項式為:,MATLAB 7.X程序設(shè)計,3/47,4.4.2多項式的算術(shù)運算,1 加減運算,MATLAB 7.X程序設(shè)計,4/47,MATLAB 7.X程序設(shè)計,5/47,2 乘法運算,MATLAB支持多項式乘法,函數(shù)格式為: 函數(shù)conv(P1,P2) 求多項式P1和P2的乘積。 這里,P1,P2是兩個多項式系數(shù)向量。,例 4-44 計算 c=conv(1 2 2,1 5 4) 執(zhí)行結(jié)果如下: c = 1 7 16 18 8 由執(zhí)行結(jié)果可知:,MATLAB 7.X程序設(shè)計,6/47,3 除法運算 Q,r=deconv(P1,P2) 對多項式P1和P2作除法運算。其中Q返回多項式P1除以P2的商式,r返回P1除以P2的余式。 注意deconv是conv的逆函數(shù),即有P1=conv(P2,Q)+r。,MATLAB 7.X程序設(shè)計,7/47,例4-45 計算 Q=deconv(1 8 0 0 -10,2 -1 3) Q = 0.5000 4.2500 1.3750 Q,r=deconv(1 8 0 0 -10,2 -1 3) 執(zhí)行結(jié)果如下: Q = 0.5000 4.2500 1.3750 r = 0 0 0 -11.3750 -14.1250 由執(zhí)行結(jié)果可知商是: 余式是:,MATLAB 7.X程序設(shè)計,8/47,4.4.3 導(dǎo)函數(shù),p=polyder(P) 求多項式P的導(dǎo)函數(shù)p p=polyder(P,Q) 求PQ的導(dǎo)函數(shù)p p,q=polyder(P,Q) 求P/Q的導(dǎo)函數(shù),導(dǎo)函數(shù)的分子存入p,分母存入q。,MATLAB 7.X程序設(shè)計,9/47,例4-46 求的導(dǎo)數(shù),p=3 -2 1;polyder(p) 執(zhí)行結(jié)果為: ans = 6 -2 結(jié)果是,MATLAB 7.X程序設(shè)計,10/47,a=3 -2 1;b=4 5 6;polyder(a,b) 執(zhí)行結(jié)果為: ans = 48 21 24 -7 結(jié)果是,例4-47 求的導(dǎo)數(shù),MATLAB 7.X程序設(shè)計,11/47,例4-48 求 的導(dǎo)數(shù)。,a=3 -2 1;b=4 5 6; q,d=polyder(a,b) 執(zhí)行結(jié)果為: q = 23 28 -17 d = 16 40 73 60 36,MATLAB 7.X程序設(shè)計,12/47,例4-49 求有理分式 的導(dǎo)數(shù)。,P=1;Q=1,0,5;p,q=polyder(P,Q) 執(zhí)行結(jié)果為: p = -2 0 q = 1 0 10 0 25,MATLAB 7.X程序設(shè)計,13/47,4.4.4 多項式求根,x=roots(P) 其中P為多項式的系數(shù)向量,求得的根賦給向量x,即x(1),x(2),x(n)分別代表多項式的n個根。 給出一個多項式的根,可以構(gòu)造相應(yīng)的多項式。若已知多項式的全部根,則可以用poly函數(shù)建立起多項式,其調(diào)用格式為: P=poly(x) x為具有n個元素的向量,poly(x)為以x為其根的多項式,且將該多項式的系數(shù)賦給向量P。,MATLAB 7.X程序設(shè)計,14/47,例4-50 求多項式的 根,A=1,8,0,0,-10;x=roots(A) 執(zhí)行結(jié)果如下: x = -8.0194 1.0344 -0.5075 + 0.9736i -0.5075 - 0.9736i 由結(jié)果可以看出,方程的根為兩個實根和一對共軛復(fù)根,MATLAB 7.X程序設(shè)計,15/47,例4-51 求方程 的根。,r=1 -7 2 40; p=roots(r); 執(zhí)行結(jié)果如下: p = 5.0000 4.0000 -2.0000 由結(jié)果可以看出,方程的根均為實根 5.000,4.0000和-2.0000。,MATLAB 7.X程序設(shè)計,16/47,例 4-52已知 (1) 計算 的全部根。 (2) 由方程 的根構(gòu)造一個多項式 并與 進行對比。,P=3,0,4,-5,-7.2,5; X=roots(P) %求方程f(x)=0的根 G=poly(X) %求多項式G(x),MATLAB 7.X程序設(shè)計,17/47,執(zhí)行結(jié)果為: X = -0.3046 + 1.6217i -0.3046 - 1.6217i -1.0066 1.0190 0.5967 G = 1.0000 0.0000 1.3333 -1.6667 -2.4000 1.6667 注意:構(gòu)造的多項式的首項系數(shù)為1。,MATLAB 7.X程序設(shè)計,18/47,4.4.5多項式估值,1 代數(shù)多項式求值 Y=polyval(P,x) 求代數(shù)多項式的值。若x為一常數(shù),則求多項式P在該點的值, Y = P(1)x N + P(2) x (N-1) + . + P(N) x + P(N+1) 若x為向量或矩陣,則對向量或矩陣中的每個元素求多項式P的值,返回值為與自變量同型的向量或矩陣。,MATLAB 7.X程序設(shè)計,19/47,例4-53 已知 分別計算 和 時 的值。,P=1 8 0 0 -10;x=1.2;Y=polyval(P,x) 執(zhí)行結(jié)果如下: Y = 5.8976 y=2 3 4;5 4 1;Y=polyval(P,y) 執(zhí)行結(jié)果如下: Y = 70 287 758 1615 758 -1,MATLAB 7.X程序設(shè)計,20/47,2 矩陣多項式求值,polyvalm函數(shù)用來求矩陣多項式的值,要求以方陣x為自變量求多項式的值。,MATLAB 7.X程序設(shè)計,21/47,例4-54 當x取 時求 的值。,p=1 -5 0 8; a=2 3 5 ;5 8 1;7 6 9; polyvalm(p,a) 執(zhí)行結(jié)果: ans = 552 690 562 548 686 538 1148 1422 1154,MATLAB 7.X程序設(shè)計,22/47,polyval(p,a) 執(zhí)行結(jié)果: ans = -4 -10 8 8 200 4 106 44 332,MATLAB 7.X程序設(shè)計,23/47,例4-55 當x=8時求(x-1)(x-2) (x-3)(x-4) 的值。,p=poly(1 2 3 4), polyvalm(p,8) 執(zhí)行結(jié)果如下: p = 1 -10 35 -50 24 ans = 840,MATLAB 7.X程序設(shè)計,24/47,4.4.6 部分分式函數(shù),R,P,K=residue(B,A) 功能:返回部分分式和余數(shù)。R為極點,P為零點 ,K為余數(shù)。,MATLAB 7.X程序設(shè)計,25/47,例4-56 求 的部分分式。,num=10*1 2 ; % numerator polynomial den=poly(-1;-3; -4);%denominator polynomial res, poles, k=residue(num, den),MATLAB 7.X程序設(shè)計,26/47,執(zhí)行結(jié)果為: res = -6.6667 5.0000 1.6667 poles = -4.0000 -3.0000 -1.0000 k = ,MATLAB 7.X程序設(shè)計,27/47,4.4.7多項式積分,polyint (P,K) 返回多項式P的積分。K 為常數(shù)項(默認值為0 )。,MATLAB 7.X程序設(shè)計,28/47,例4-57 求 。,p=3 -2 1;polyint(p,2) ans = 1 -1 1 2 polyint(p) % 常數(shù)為0 ans = 1 -1 1 0 由執(zhí)行結(jié)果可知:,(為常數(shù)項,本例中為2和0)。,MATLAB 7.X程序設(shè)計,29/47,4.5插值和擬合,4.5.1數(shù)值插值 1 一維數(shù)值插值 Y1=interp1(X,Y,X1,method) 函數(shù)根據(jù)X,Y的值,計算函數(shù)在X1處的值。X,Y是兩個等長的已知向量,描述數(shù)據(jù)點,X1是一個向量或標量,描述欲插值的點,Y1是一個與X1等長的插值結(jié)果。,MATLAB 7.X程序設(shè)計,30/47,method是插值方法,可用的方法有: linear 默認方法,線性插值。 nearest 最鄰近插值。 spline 三次樣條插值。 cubic 三次插值,要求x的值等距離。 所有插值方法均要求x是單調(diào)的。 注意:X1的取值范圍不能超出X的給定范圍,否則,會給出“NaN”錯誤。,MATLAB 7.X程序設(shè)計,31/47,例4-58 求正弦、余弦函數(shù)在區(qū)間0 1內(nèi)間 隔為0.25的各點的值。,x = 0:1; y1 = sin(x); y2=cos(x);xi = 0:.25:1; yi1 = interp1(x,y1,xi), yi2= interp1(x,y2,xi) %線性插值方法 yi1 = interp1(x,y1,xi,nearest), yi2= interp1(x,y2,xi,nearest) %最鄰近插值,MATLAB 7.X程序設(shè)計,32/47,2 二維數(shù)值插值,Z1=interp2(X,Y,Z,X1,Y1,method) 二維插值。其中X,Y是兩個向量,分別描述兩個參數(shù)的采樣點,Z是與參數(shù)采樣點對應(yīng)的函數(shù)值,X1,Y1是兩個向量或標量,描述欲插值的點。Z1是根據(jù)相應(yīng)的插值方法得到的插值結(jié)果。,MATLAB 7.X程序設(shè)計,33/47,4.5.2 數(shù)據(jù)擬合,polyfit函數(shù)求最小二乘擬合多項式的系數(shù),調(diào)用格式為: P,S=polyfit(X,Y,m) 功能:根據(jù)采樣點X和采樣點函數(shù)值Y,產(chǎn)生一個m次多項式P及其在采樣點的誤差向量S。其中X,Y是兩個等長的向量,P是一個長度為m+1的多項式系數(shù)向量。,MATLAB 7.X程序設(shè)計,34/47,例4-59已知 在1,3區(qū)間10個采樣點的函數(shù)值,求 的4次擬合多項式p(x)。,MATLAB 7.X程序設(shè)計,35/47,例4-60 已知數(shù)表如下 x 9 10 11 12 f(x) 2.6093 1.7586 1.3979 1.9483 求4次擬合多項式f(x),并計算f(10.5)的近似值。,MATLAB 7.X程序設(shè)計,36/47,4.6數(shù)值微分與積分,4.6.1差分,DX=diff(X) 計算向量X的向前差分,DX(i)=X(i+1)-X(i),i=1,2,n-1。,DX=diff(X,n) 計算向量X的n階向前差分,如 diff(X,2)=diff(diff(X)。,DX=diff(A,n,dim) 計算矩陣A的n階差分,dim=1時(缺省狀態(tài)),按列計算差分;dim=2,按行計算差分。,MATLAB 7.X程序設(shè)計,37/47,例4-61 求矩陣 的差分。,MATLAB 7.X程序設(shè)計,38/47,4.6.2數(shù)值積分 1數(shù)值積分基本原理 高等數(shù)學(xué)中求解定積分的數(shù)值方法有簡單的梯形法、辛普生(Simpson)法、牛頓柯特斯(Newton-Cotes)法等,基本思想都是將整個積分區(qū)間a,b分成n個子區(qū)間xi,xi+1,i=1,2,n,其中x1=a,xn+1=b。這樣求定積分問題就分解為求和問題。,MATLAB 7.X程序設(shè)計,39/47,2 一重積分,I,n=quad(fname,a,b,tol,trace) 基于變步長辛普生法的求定積分。其中: fname 是被積函數(shù)。 a和b 分別是定積分的下限和上限。 tol 用來控制積分精度,缺省時取tol=0.001。 trace 控制是否展現(xiàn)積分過程,若取非0則展現(xiàn)積分過程,取0則不展現(xiàn),缺省時取trace=0。返回參數(shù)I即定積分值,n為被積函數(shù)的調(diào)用次數(shù)。,MATLAB 7.X程序設(shè)計,40/47,I,n=quad8(fname,a,b,tol,trace) 基于牛頓柯特斯法求定積分。其中參數(shù)的含義和quad函數(shù)相似,只是tol的缺省值取10-6。,MATLAB 7.X程序設(shè)計,41/47,例4-62 求,(1)建立被積函數(shù)文件fesin.m function f=fesin(x) f=exp(-0.5*x).*sin(x+pi/6); (2)調(diào)用數(shù)值積分函數(shù)quad求定積分 S,n=quad(fesin,0,3*pi) 執(zhí)行結(jié)果如下: S = 0.9008 n = 77,MATLAB 7.X程序設(shè)計,42/47,例4-63 求,(1) 被積函數(shù)文件fx.m。 function f=fx(x) f=x.*sin(x)./(1+cos(x).*cos(x); (2) 調(diào)用函數(shù)quad8求定積分。 I=quad8(fx,0,pi) 執(zhí)行結(jié)果如下: I = 2.4674,MATLAB 7.X程序設(shè)計,43/47,例4-64 分別用quad函數(shù)和quad8函數(shù)求 的近似值,并在相同的積分精度下,比較函數(shù)的調(diào)用次數(shù)。,MATLAB 7.X程序設(shè)計,44/47,以表格形式定義的函數(shù)的求定積分函數(shù)trapz的格式為: trapz(X,Y)
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年海南省安全員知識題庫
- 2025年貴州省安全員C證考試(專職安全員)題庫附答案
- 中醫(yī)內(nèi)科學(xué)-癭病
- 【大學(xué)課件】建筑設(shè)備工程
- 聲音的產(chǎn)生與傳播+flash課件
- 語文課件-畫蛇添足
- 三年級語文《炮手》課件
- 建設(shè)工程安全生產(chǎn)管理課件
- 萬科穿插施工與施工計劃
- 《急腹癥幻燈》課件
- 2024年航空職業(yè)技能鑒定考試-航空乘務(wù)員危險品考試近5年真題附答案
- 強制執(zhí)行解除申請書模板
- 小流域水土保持綜合治理工程施工方案
- 佳能-6D-相機說明書
- 第五單元《圓》(大單元教學(xué)設(shè)計)-2024-2025學(xué)年六年級上冊數(shù)學(xué)人教版
- 商業(yè)道德和反腐敗制度
- 2025屆新高考英語熱點沖刺復(fù)習(xí)語法填空
- 水利工程土方回填施工方案
- 宜昌市西陵區(qū)2024年數(shù)學(xué)六年級第一學(xué)期期末檢測試題含解析
- 樂器維修保養(yǎng)行業(yè)三年發(fā)展洞察報告
- 中儲糧社招考試題庫
評論
0/150
提交評論