MATLAB數(shù)值積分微分.ppt_第1頁(yè)
MATLAB數(shù)值積分微分.ppt_第2頁(yè)
MATLAB數(shù)值積分微分.ppt_第3頁(yè)
MATLAB數(shù)值積分微分.ppt_第4頁(yè)
MATLAB數(shù)值積分微分.ppt_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

MATLAB數(shù)值積分與微分 數(shù)值積分 數(shù)值微分,數(shù)值積分基本原理,求解定積分的數(shù)值方法多種多樣,如簡(jiǎn)單的梯形法、辛普生(Simpson)法、牛頓柯特斯(Newton-Cotes)法等都是經(jīng)常采用的方法。 基本思想都是將整個(gè)積分區(qū)間a,b分成n個(gè)子區(qū)間xi,xi+1,i=1,2,n,其中x1=a,xn+1=b。這樣求定積分問(wèn)題就分解為求和問(wèn)題。,數(shù)值積分的實(shí)現(xiàn)方法,1變步長(zhǎng)辛普生法 基于變步長(zhǎng)辛普生法,MATLAB給出了quad函數(shù)來(lái)求定積分。該函數(shù)的調(diào)用格式為: I,n=quad(fname,a,b,tol,trace) 其中fname是被積函數(shù)名。a和b分別是定積分的下限和上限。tol用來(lái)控制積分精度,缺省時(shí)取tol=0.001。trace控制是否展現(xiàn)積分過(guò)程,若取非0則展現(xiàn)積分過(guò)程,取0則不展現(xiàn),缺省時(shí)取trace=0。返回參數(shù)I即定積分值,n為被積函數(shù)的調(diào)用次數(shù)。,例 求定積分。 (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) S = 0.9008 n = 77,2牛頓柯特斯法 基于牛頓柯特斯法,MATLAB給出了quad8函數(shù)來(lái)求定積分。該函數(shù)的調(diào)用格式為: I,n=quad8(fname,a,b,tol,trace) 其中參數(shù)的含義和quad函數(shù)相似,只是tol的缺省值取10-6。該函數(shù)可以更精確地求出定積分的值,且一般情況下函數(shù)調(diào)用的步數(shù)明顯小于quad函數(shù),從而保證能以更高的效率求出所需的定積分值。,例 求定積分。 (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) I = 2.4674,例 分別用quad函數(shù)和quad8函數(shù)求定積分的近似值,并在相同的積分精度下,比較函數(shù)的調(diào)用次數(shù)。 調(diào)用函數(shù)quad求定積分: format long; fx=inline(exp(-x); I,n=quad(fx,1,2.5,1e-10) I = 0.28579444254766 n = 65,調(diào)用函數(shù)quad8求定積分: format long; fx=inline(exp(-x); I,n=quad8(fx,1,2.5,1e-10) I = 0.28579444254754 n = 33,3被積函數(shù)由一個(gè)表格定義 在MATLAB中,對(duì)由表格形式定義的函數(shù)關(guān)系的求定積分問(wèn)題用trapz(X,Y)函數(shù)。其中向量X,Y定義函數(shù)關(guān)系Y=f(X)。 例 用trapz函數(shù)計(jì)算定積分。 命令如下: X=1:0.01:2.5; Y=exp(-X); %生成函數(shù)關(guān)系數(shù)據(jù)向量 trapz(X,Y) ans = 0.28579682416393,humps 函數(shù),quad(humps,0,1,1.e-4),例,ans = 29.8581,syms x h = 1/(x-.3)2+.01) + 1/(x-.9)2+.04) - 6 I = int(h),D = simple(int(h,0,1) Qexact = double(D),for k=1:12 tol=10(-k); Q,fcount=quadtx(humps,0,1,tol); err=Q-Qexact; ratio=err/tol; fprintf(%8.0e %21.14f %7d %13.3e %9.3fn,. tol,Q,fcount,err,ratio), end,tol Q count err ratio 1e-001 29.83328444174864 25 -2.504e-002 -0.250 1e-002 29.85791444629948 41 -4.109e-004 -0.041 1e-003 29.85834299237637 69 1.760e-005 0.018 1e-004 29.85832444437543 93 -9.511e-007 -0.010 1e-005 29.85832551548643 149 1.200e-007 0.012 1e-006 29.85832540194041 265 6.442e-009 0.006 1e-007 29.85832539499819 369 -5.005e-010 -0.005 1e-008 29.85832539552631 605 2.763e-011 0.003 1e-009 29.85832539549604 1061 -2.640e-012 -0.003 1e-010 29.85832539549890 1469 2.274e-013 0.002 1e-011 29.85832539549867 2429 -7.105e-015 -0.001 1e-012 29.85832539549867 4245 0.000e+000 0.000,二重定積分的數(shù)值求解,使用MATLAB提供的dblquad函數(shù)就可以直接求出二重定積分的數(shù)值解。該函數(shù)的調(diào)用格式為: I=dblquad(f,a,b,c,d,tol,trace) 該函數(shù)求f(x,y)在a,bc,d區(qū)域上的二重定積分。參數(shù)tol,trace的用法與函數(shù)quad完全相同。,例 計(jì)算二重定積分 (1) 建立一個(gè)函數(shù)文件fxy.m: function f=fxy(x,y) global ki; ki=ki+1; %ki用于統(tǒng)計(jì)被積函數(shù)的調(diào)用次數(shù) f=exp(-x.2/2).*sin(x.2+y); (2) 調(diào)用dblquad函數(shù)求解。 global ki;ki=0; I=dblquad(fxy,-2,2,-1,1) ki I = 1.57449318974494 ki = 1038,數(shù)值微分的實(shí)現(xiàn),在MATLAB中,沒(méi)有直接提供求數(shù)值導(dǎo)數(shù)的函數(shù),只有計(jì)算向前差分的函數(shù)diff,其調(diào)用格式為: DX=diff(X):計(jì)算向量X的向前差分,DX(i)=X(i+1)-X(i),i=1,2,n-1。 DX=diff(X,n):計(jì)算X的n階向前差分。例如,diff(X,2)=diff(diff(X)。 DX=diff(A,n,dim):計(jì)算矩陣A的n階差分,dim=1時(shí)(缺省狀態(tài)),按列計(jì)算差分;dim=2,按行計(jì)算差分。,例 生成以向量V=1,2,3,4,5,6為基礎(chǔ)的范得蒙矩陣,按列進(jìn)行差分運(yùn)算。 命令如下: V=vander(1:6) DV=diff(V) %計(jì)算V的一階差分,V = 1 1 1 1 1 1 32 16 8 4 2 1 243 81 27 9 3 1 1024 256 64 16 4 1 3125 625 125 25 5 1 7776 1296 216 36 6 1,DV = 31 15 7 3 1 0 211 65 19 5 1 0 781 175 37 7 1 0 2101 369 61 9 1 0 4651 671 91 11 1 0,例 用不同的方法求函數(shù)f(x)的數(shù)值導(dǎo)數(shù),并在同一個(gè)坐標(biāo)系中做出f(x)的圖像。 程序如下: f=inline(sqrt(x.3+2*x.2-x+12)+(x+5).(1/6)+5*x+2); g=inline(3*x.2+4*x-1)./sqrt(x.3+2*x.2-x+12)/2+1/6./(x+5).(5/6)+5); x=-3:0.01:3; p=polyfit(x,f(x),5); %用5次多

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論