第3章微積分學(xué)_第1頁
第3章微積分學(xué)_第2頁
第3章微積分學(xué)_第3頁
第3章微積分學(xué)_第4頁
第3章微積分學(xué)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第3章 Matlab在微積分學(xué)中的應(yīng)用在這一章里,我們將利用MATLAB解決高等數(shù)學(xué)中的許多計算問題。我們還將學(xué)會建立一般的函數(shù)在一定程度上解決理論上的計算問題。3.1 極限數(shù)學(xué)中的極限問題類型大概有:極限數(shù)學(xué)形式的例子:數(shù)列的極限有:一元函數(shù)的極限有:二元函數(shù)的極限有:以上是數(shù)學(xué)中出現(xiàn)的不同形式的極限。但求極限的命令在MATLAB中是相同的,都由命令limit來完成。其常用形式有:limit(F,x,a) 計算limit(F,a) 符號表達(dá)式F中由命令findsym(F)返回獨立的變量v,計算limit(F) 符號確定同上,設(shè)為v, 計算limit(F,x,a,right) 計算limit(

2、F,x,a,left) 計算注意:求一極限的基本步驟為:1.把數(shù)學(xué)形式的表達(dá)式轉(zhuǎn)化為Matlab的表達(dá)式。當(dāng)然表達(dá)式由多個符號組成,并且符號都不是代表某一具體的數(shù)值,其值是一個變動的量,即所謂的符號變量。為此,我們要建立一些必要的符號對象,如:符號變量,符號表達(dá)式等。2.使用求極限的命令limit來對符號表達(dá)式進(jìn)行計算,其中要指明是對哪一個符號變量做極限運算;若不指定,則符號變量由命令findsym(F)來指定。3.要指定符號變量的“極限點”以及趨于“極限點”的方向;若不指定“極限點”的值,則缺省地認(rèn)為是0點。4.總之一點,極限作的都是符號運算!例3-1求解:>> syms n m

3、 xf=(6*n2-n+1)/(n3-n2+2)g=(1+m*x)n-(1+n*x)m)/x2h=(sqrt(1+x)-2)/(x-3)>> lim_f=limit(f,n,inf)>> lim_g=limit(g,x,0) %或lim_g=limit(g)>> lim_h=limit(h,x,3,'right')運算結(jié)果是: lim_f =0 lim_g =-1/2*m2*n+1/2*n2*m lim_h =1/4例3-2 求由于求二重極限在數(shù)學(xué)上沒有方法可循,因此在Matlab中還沒有一個統(tǒng)一的命令能求一個一般的二重極限,只能求在理論上已

4、經(jīng)證明與路徑無關(guān)的函數(shù),即把二重極限化成二次極限來計算:解:>> syms x y>> f_xy='log(x+exp(y)/sqrt(x2+y2)'>> lim_f_xy=limit(limit(f_xy,x,1),y,0)運行的結(jié)果是:lim_f_xy =log(2)3.2微積分高等數(shù)學(xué)中的微積分是大學(xué)數(shù)學(xué)中的重要部分,內(nèi)容龐雜,應(yīng)用廣泛,歸納起來有:函數(shù)的導(dǎo)數(shù),函數(shù)的積分,泰勒展式,-函數(shù),歐拉函數(shù)等。下面先講函數(shù)的導(dǎo)數(shù)。3.2.1函數(shù)的導(dǎo)數(shù)數(shù)學(xué)中的導(dǎo)數(shù)類型大概有:導(dǎo)數(shù)例如:一元函數(shù)的導(dǎo)數(shù):y=esinx-7cosx+5x,y=二元函數(shù)

5、的導(dǎo)數(shù):z=arctan,求,z=ln(復(fù)合函數(shù)的導(dǎo)數(shù):y=f(x)=a+bx+f(x)= 隱函數(shù)的導(dǎo)數(shù):arctgF(x,x+y,x+y+z)=0,求。數(shù)學(xué)上雖然有導(dǎo)數(shù)與偏導(dǎo)數(shù)之分,但它們在Matlab中有統(tǒng)一的命令diff。其常使用形式為:diff(f,v)計算diff(f,v,n)計算diff(f)用命令findsym找出表達(dá)式f中的獨立變量,設(shè)為v,即v=findsym(F),計算diff(f,n)獨立變量確定同上,設(shè)為v,計算例3-3 已知y=計算解:>> x=sym('x')>> y=(sqrt(x)+cos(x)/(x-1)-7*x2;&g

6、t;> Dy=diff(y) >>D3y=diff(y,3)運行結(jié)果為:Dy =(1/2/x(1/2)-sin(x)/(x-1)-(x(1/2)+cos(x)/(x-1)2-14*xD3y =(3/8/x(5/2)+sin(x)/(x-1)-3*(-1/4/x(3/2)-cos(x)/(x-1)2+6*(1/2/x(1/2)-sin(x)/(x-1)3-6*(x(1/2)+cos(x)/(x-1)4例3-4 已知z=ln(。解:>> x=sym('x');y=sym('y');z=log(sqrt(x)+sqrt(y);result

7、=x*diff(z,x)+y*diff(z,y);simple (result)計算的結(jié)果為:result=1/2例3-5已知y=ln(x),x=t。解:在復(fù)合函數(shù)的計算中,一定要注意變量賦值的先后順序>> syms t x>> x=t2*sin(t);>> y=log(x3);>> dydt=diff(y,t)>> d2yd2t=diff(dydt,t)/diff(x,t)計算結(jié)果為: dydt =(6*t5*sin(t)3+3*t6*sin(t)2*cos(t)/t6/sin(t)3d2yd2t =(30*t4*sin(t)3+3

8、6*t5*sin(t)2*cos(t)+6*t6*sin(t)*cos(t)2-3*t6*sin(t)3)/t6/sin(t)3-6*(6*t5*sin(t)3+3*t6*sin(t)2*cos(t)/t7/sin(t)3-3*(6*t5*sin(t)3+3*t6*sin(t)2*cos(t)/t6/sin(t)4*cos(t)/(2*t*sin(t)+t2*cos(t)例3-6 已知arctg解:設(shè)方程F(x,y,z)=0確定了函數(shù)z=z(x,y),則=-,再用類似的計算方法,可以計算。>> syms x y z>> F=atan(y+z)/x)-log(x+y+z)

9、>> dFdx=diff(F,x)>> dFdz=diff(F,z)>> dZdx=-dFdx/dFdz>> dZdxdy=diff(dZdx,y)>> dZdxdz=diff(dZdx,z)>> d2Zdxdy=-dZdxdy/dZdxdz計算結(jié)果為:dFdx =-(y+z)/x2/(1+(y+z)2/x2)-1/(x+y+z)dFdz =1/x/(1+(y+z)2/x2)-1/(x+y+z)dZdx =(y+z)/x2/(1+(y+z)2/x2)+1/(x+y+z)/(1/x/(1+(y+z)2/x2)-1/(x+y+

10、z)dZdxdy =(1/x2/(1+(y+z)2/x2)-2*(y+z)2/x4/(1+(y+z)2/x2)2-1/(x+y+z)2)/(1/x/(1+(y+z)2/x2)-1/(x+y+z)-(y+z)/x2/(1+(y+z)2/x2)+1/(x+y+z)/(1/x/(1+(y+z)2/x2)-1/(x+y+z)2*(-2/x3/(1+(y+z)2/x2)2*(y+z)+1/(x+y+z)2)dZdxdz =(1/x2/(1+(y+z)2/x2)-2*(y+z)2/x4/(1+(y+z)2/x2)2-1/(x+y+z)2)/(1/x/(1+(y+z)2/x2)-1/(x+y+z)-(y+z

11、)/x2/(1+(y+z)2/x2)+1/(x+y+z)/(1/x/(1+(y+z)2/x2)-1/(x+y+z)2*(-2/x3/(1+(y+z)2/x2)2*(y+z)+1/(x+y+z)2)d2Zdxdy =(-(1/x2/(1+(y+z)2/x2)-2*(y+z)2/x4/(1+(y+z)2/x2)2-1/(x+y+z)2)/(1/x/(1+(y+z)2/x2)-1/(x+y+z)+(y+z)/x2/(1+(y+z)2/x2)+1/(x+y+z)/(1/x/(1+(y+z)2/x2)-1/(x+y+z)2*(-2/x3/(1+(y+z)2/x2)2*(y+z)+1/(x+y+z)2)/

12、(1/x2/(1+(y+z)2/x2)-2*(y+z)2/x4/(1+(y+z)2/x2)2-1/(x+y+z)2)/(1/x/(1+(y+z)2/x2)-1/(x+y+z)-(y+z)/x2/(1+(y+z)2/x2)+1/(x+y+z)/(1/x/(1+(y+z)2/x2)-1/(x+y+z)2*(-2/x3/(1+(y+z)2/x2)2*(y+z)+1/(x+y+z)2)3.2.2 一重積分3.2.2.1 不定積分不定積分是高等數(shù)學(xué)中的基本運算。數(shù)學(xué)中的許多不定積分的原函數(shù)不能用初等函數(shù)來表示,因此在Matlab中,有些函數(shù)的原函數(shù)是求不出來的。Matlab提供了幾個用于求函數(shù)不定積分的

13、命令,如:int,intwave,fnint (用于專門函數(shù)的積分)。其中函數(shù)int是最常用的,功能強大的積分函數(shù)。下面我們介紹函數(shù)int的使用格式:F = int (f)F = int (f, var)參數(shù)說明:·f:被積函數(shù);·var:積分變元;若沒有指定,則對變量v = findsym (f)積分;·F:函數(shù)f的原函數(shù)。F中沒有常數(shù)C。例3-7 計算 ,解:syms x y z>> f=exp(x*y+z);>> F1=int(f) F1 = 1/y*exp(x*y+z)>> F2=int(f,z) F2 = exp(x*

14、y+z)3.2.2.2 定積分及廣義積分?jǐn)?shù)學(xué)中的定積分有時和不定積分使用的方法不同。我們這里所講的廣義積分其積分區(qū)間端點中至少有一個為無窮,而函數(shù)在該區(qū)間內(nèi)是連續(xù)的。在Matlab中,只需在命令int中加入積分上下限即可。即F = int(f,a,b)F = int(f,var,a,b)參數(shù)說明:·f:被積函數(shù);·a,b:積分上下限;a, b可為無窮大(若為負(fù)無窮大,則為:);·F:函數(shù)的積分值。有時為無窮大。定積分的計算,也可調(diào)用函數(shù)quad ( )或quad8 ( ),其格式為:y, n = quad (f , a, b, tol)y, n = quad8 (

15、f , a, b, tol)參數(shù)說明:·f:自定義的被積函數(shù);·a,b:積分上下限;·n:計算過程中調(diào)用被積函數(shù)f的次數(shù);tol:精度要求,quad ( )的默認(rèn)值為:tol = 1e-3,quad8 ( )的默認(rèn)值為:tol = 1e-6;·quad ( )函數(shù)采用的是Simpson方法計算定積分的近似值;·quad8 ( )函數(shù)采用的是Newton Cotes 方法計算定積分的近似值,其精度比前者更高。例3-8 計算, 解:f=1/(x2+2*x+3);>> F1=int(f,2,pi) F1 = 1/2*atan(1/2*2(

16、1/2)*(pi+1)*2(1/2)-1/2*atan(3/2*2(1/2)*2(1/2) >> F2=int(f,-inf,inf) F2 = 1/2*pi*2(1/2)例3-9 計算解:先定義函數(shù),文件名:f.mfunction y=f(x)y=1/sqrt(2*pi)*exp(-x.2/2);保存后,在命令窗口鍵入format long>> y,n=quad('f',-3,3)則顯示結(jié)果為:y = 0.99729991863154n = 57 (表示被積函數(shù)f的調(diào)用次數(shù))3.2.3 多重積分3.2.3.1 二重積分一種方法:由于積分區(qū)域的多樣性和復(fù)

17、雜性,通過人為地結(jié)合積分區(qū)域的圖形,把二重積分轉(zhuǎn)化為二次積分,用int命令進(jìn)行計算;另一種方法:利用Matlab提供的函數(shù)dblquad和quad2dggen計算,其調(diào)用格式如下:·二重數(shù)值積分(在矩形區(qū)域上),使用dblquad函數(shù),格式為: y = dblquad (f, x_m, x_M, y_m, y_M, tol)·一般二重積分(在數(shù)值積分工具箱(NIT,即Numerical Integration Toolbox)中提供了quad2dggen函數(shù),該函數(shù)可從網(wǎng)上下載,網(wǎng)址:contrib./v4/inte-gration/nit.zip,安裝之后,將其路徑加載到

18、Matlab路徑下),格式為: I = quad2dggen(被積函數(shù)名,下限函數(shù)名,上限函數(shù)名,y_m,y_M,tol)例3-10 計算其中D為直線y = x和拋物線y = x2所圍部分。解:由數(shù)學(xué)方法可得:(1)畫出積分區(qū)域示意圖>>syms x y>> f=(2-x-y)/2;>> y1=x;>> y2=x2;>> ezplot(y1);hold on>> ezplot(y2);>> axis(0,2,0,2)(2)確定積分限a=fzero('x-x2',0)a = 0>> b

19、=fzero('x-x2',1)b = 1這是第2次積分的上下限。(3)積分運算f_dy=int(f,y,x2,x) %先對y積分f_dy = x-5/4*x2-1/2*x*(x-x2)+1/4*x4>> I=int(f_dy,a,b) %再對x積分I = 11/120例3-11 試求下面的二次積分解:先定義函數(shù),函數(shù)名為:my2dfun.mfunction z=my2dfun(x,y)global kk;kk=kk+1; %定義全局變量,測定被積函數(shù)調(diào)用次數(shù)z=exp(-x.2/2).*sin(x.2+y);保存后在命令窗口執(zhí)行下列命令:clear>>

20、 global kk;kk=0;>> y=dblquad('my2dfun',-2,2,-1,1),kky =1.57449318974494kk = 1038 (表示被積函數(shù)調(diào)用次數(shù))3.2.3.2 三重積分三重積分的過程與二重積分過程相同,也是把三重積分轉(zhuǎn)化成三次積分來計算,只不過在確定積分限時更繁瑣而已。在確定積分限時一般要結(jié)合三維的積分區(qū)域,所以一般先畫出積分區(qū)域。例3-12 計算其中區(qū)域V為三個坐標(biāo)面及平面:所圍成的閉區(qū)域。解:由數(shù)學(xué)方法可得: (1)畫出積分區(qū)域示意圖。由于圖形比較簡單,所以我們沒有畫出。(并且Matlab沒有畫三維符號函數(shù)的命令)sym

21、s x y z f=x;(2)確定積分限。a=0;b=1;phi1=0;phi2=(1-x)/2;psi1=0;psi2=1-x-2*y;(3)積分計算。f_dz=int(f,z,psi1,psi2)f_dzdy=int(f_dz,y,phi1,phi2)I=int(f_dzdy,x,a,b)計算結(jié)果為:f_dz = x*(1-x-2*y)f_dzdy =-x*(1/2-1/2*x)2+x*(1-x)*(1/2-1/2*x)I =1/483.2.4 Taylor展式數(shù)學(xué)定理表明:若f (x)在x = 0點附近有直到n+1階連續(xù)導(dǎo)數(shù),那么:其中: 實際上是要將函數(shù)f (x)表示成xn(n從0到無

22、窮)的和的形式。這完全可以用Matlab提供的命令taylor來完成展開工作。其常用的使用形式為:·taylor (f)·taylor (f, n)·taylor (f, v)·taylor (f,n, a)參數(shù)說明:f:待展開的函數(shù)表達(dá)式,可以不用單引號生成;n:把函數(shù)展開到n階,若不包含n,則缺省地展開到6階;v:對函數(shù)f中的變量v展開,若不包含v,則對變量v = findsym (f)展開;a:Taylor展式的擴充功能,對函數(shù)f在x = a點展開。例3-13 計算(1)把y = e x展開到6階;(2)把y = lnx在x = 1點展開到6階;(

23、3)把y = sinx在x =/2點展開到6階;(4)把y = x t關(guān)于變量t展開到3階。解:syms x ty1=taylor(exp(-x)y2=taylor(log(x),6,1)y3=taylor(sin(x),pi/2,6)y4=taylor(xt,3,t)運行結(jié)果為:y1 = 1-x+1/2*x2-1/6*x3+1/24*x4-1/120*x5y2 = x-1-1/2*(x-1)2+1/3*(x-1)3-1/4*(x-1)4+1/5*(x-1)5y3 = 1-1/2*(x-1/2*pi)2+1/24*(x-1/2*pi)4y4 = 1+log(x)*t+1/2*log(x)2*t

24、23.2.5 Fourier級數(shù)數(shù)學(xué)定理表明:設(shè)函數(shù)f (x)已經(jīng)展開為全區(qū)間上的一致收斂的三角級數(shù):其中: 雖然Matlab中還沒有提供一個專門的命令用于求解Fourier級數(shù),但根據(jù)上面的數(shù)學(xué)公式,也可以編寫一個函數(shù)文件sfour.m,用于求函數(shù)f在區(qū)間上的Fourier級數(shù)的系數(shù):function a0,ak,bk=sfour(f)syms x na0=int(f,-pi,pi)/pian=int(f*cos(n*x),-pi,pi)/pi;an=simple(an)bn=int(f*sin(n*x),-pi,pi)/pi;bn=simple(bn)有了上面的函數(shù),我們可以求得一些函數(shù)的

25、Fourier級數(shù)的系數(shù)。例3-14 求函數(shù)y = x的Fourier級數(shù)的系數(shù)解:調(diào)用上面定義的函數(shù)sfour來計算:>>syms x>> f=x;>> a0,ak,bk=sfour(f)a0 =0an =0bn =2/n2/pi*sin(pi*n)-2/n*cos(pi*n)注:在Matlab中,化簡命令不能把sin(n*pi)和cos(n*pi)轉(zhuǎn)化為(-1)n。所以bn的結(jié)果較長。3.2.6 梯度設(shè)u = u(x, y, z)是一數(shù)量函數(shù),點p (x p, y p, z p)是等高面u = u (x, y, z) = C上的任一點,則稱向量為函數(shù)u

26、= u (x, y, z)在p點的梯度。1. 近似梯度函數(shù)gradient。使用形式: (1)FX, FY = gradient (F) (2)FX, FY = gradient (F, H) (3)FX, FY = gradient (F, HX, HY) (4)FX, FY, FZ = gradient (F) (5)FX, FY, FZ = gradient (F, HX, HY, HZ) (6)FX, FY, FZ, = gradient (F, )參數(shù)說明: (1)F:待求梯度的數(shù)值矩陣。F可以為向量、二維矩陣、三維矩陣; (2)FX,F(xiàn)Y,F(xiàn)Z:矩陣F在x、y、z方向上的數(shù)值梯度;

27、 (3)H:H為一標(biāo)量,作為各個方向上各點之間的步長; (4)HX,HY,HZ:矩陣F在x、y、z方向上的具體步長。HX,HY,HZ可為標(biāo)量或與矩陣F各個方向上同維的向量。例3-15 計算函數(shù)數(shù)值梯度,且以圖形顯示。解:x,y=meshgrid(-2:.2:2,-2:.2:2); %由兩個向量生成的矩陣>> z=x.*exp(-x.2-y.2);>> px,py=gradient(z,0.2,0.2);>> contour(z) %等高線圖>> hold on>> quiver (px,py) %向量圖運行結(jié)果為:數(shù)值梯度圖2. 函數(shù)

28、梯度和方向?qū)?shù)jacobian。使用形式:jacobian (f, v) 參數(shù)說明: f:函數(shù)向量或標(biāo)量,當(dāng)f為標(biāo)量時,jacobian (f, v) = gradient (f); v:自變量向量或者單個變量。例3-16求:(1)u = x y z在點播M (1, 1, 1)處的梯度;(2)u = x2+2y2+3z2+xy+3x-2y-6z在點O (0, 0, 0)及A (1, 2, 3)處的梯度大小。syms x y z >> u1=x*y*z;>> u2=x2+2*y2+3*z2+x*y+3*x-2*y-6*z;>> v=x,y,z;>>

29、 J1=jacobian(u1,v);>> J2=jacobian(u2,v);J1_M=subs(subs(subs(J1,x,1),y,1),z,1)%subs(x, 1) 用1替換x,計算其值J1_M = 1 1 1>> J2_O=subs(subs(subs(J2,x,0),y,0),z,0)J2_O = 3 -2 -6>> J2_A=subs(subs(subs(J2,x,1),y,2),z,3)J2_A = 7 7 123.3 最小二乘法在生產(chǎn)實踐中,常常需要根據(jù)實際測量得到的一系列數(shù)據(jù)找出函數(shù)關(guān)系,通常叫做配曲線或找經(jīng)驗公式。本節(jié)我們介紹一種找

30、直線的方法,它是廣泛使用的一種處理數(shù)據(jù)的方法。例3-17 在某實驗中測得數(shù)據(jù)如下:X104180190177147134150191204121Y100200210185155135170205235125由此要推出x和y的函數(shù)關(guān)系:y = f (x)。解:先把這些數(shù)據(jù)點描繪出來,如圖所示,觀察x和y大概滿足的函數(shù)關(guān)系。先把x和y進(jìn)行適當(dāng)?shù)恼{(diào)整,使自變量x的值從小到大排列。>>x=104 180 190 177 147 134 150 191 204 121;>> y=100 200 210 185 155 135 170 205 235 125;>> x,

31、i=sort(x)x = 104 121 134 147 150 177 180 190 191 204i = 1 10 6 5 7 4 2 3 8 9>> y=y(i)y = 100 125 135 155 170 185 200 210 205 235>> plot(x,y,'r*')>> hold on這些數(shù)據(jù)點大致分布在一條直線上,即x和y有線性函數(shù)關(guān)系:y = ax+b,由數(shù)學(xué)推斷過程得:, 其中n為x和y的長度。用Matlab計算為:x=104 180 190 177 147 134 150 191 204 121;>>

32、; y=100 200 210 185 155 135 170 205 235 125;>> x,i=sort(x) %以升序排序,i為元素在原向量中的位置。x = 104 121 134 147 150 177 180 190 191 204i = 1 10 6 5 7 4 2 3 8 9>> y=y(i)y = 100 125 135 155 170 185 200 210 205 235>> plot(x,y,'r*')>> hold on>> n=length(x);>> a_den=n*sum(x

33、.*y)-sum(x)*sum(y);>> b_den=sum(y).*sum(x.2)-sum(x).*sum(x.*y);>> ab_num=n*sum(x.2)-(sum(x)2;>> a=a_den/ab_numa = 1.2673>> b=b_den/ab_numb = -30.5143>> x=100:0.5:220;>> y=a*x+bplot(x,y)運算結(jié)果為:最小二乘法結(jié)果3.4 微積分的應(yīng)用 例3-18 求通過點(1, 1)的曲線方程,使其在區(qū)間1,x上對應(yīng)的曲邊梯形面積等于該曲線上點M (x, y)

34、的兩個坐標(biāo)之積的兩倍(x>0, y>0)。解:設(shè)曲線為y = y (x),按所給條件,可得對上式兩邊求導(dǎo),得微分方程y = 2 (y-xy),或y= y(2x),且y (1) = 1。對此,可用dsolve函數(shù)求解。syms x yy=dsolve('Dy+y/(2*x)=0','y(1)=1','x')計算結(jié)果為:y =1/x(1/2)或syms t y>> y=dsolve('Dy+y/(2*t)=0','y(1)=1')計算結(jié)果為:y =1/t(1/2)3.5 方程(組)的求解數(shù)學(xué)計算

35、中有很大一部分是求解方程(組),有些方程(組)可以得到精確的解析解,而有些卻很難做到,只能求得滿足一定精度的數(shù)值解。對于線性方程組的解,我們在后面章節(jié)中討論。這一節(jié)主要是討論一般的代數(shù)方程(組)的解。在Matlab中解方程組的命令有l(wèi)insolve和solve,其中命令linsolve專門用于求解線性方程組,而命令solve可適用于所有的代數(shù)方程(組)。其常用形式有:1. x = linsolve (A, B) ss = solve (s) ss = solve (s, v)參數(shù)說明:·s:包含方程(一個)等式的字符串(可以是函數(shù)名,或者是描述方程的字符串);·v:方程s中

36、的一個變量;·ss:若是第一種情形,對s中默認(rèn)的變量求解,結(jié)果賦給ss;若是第二種情形,對s中指定的變量v求解,結(jié)果賦給ss;·x:x是矩陣方程Ax = B的解x = sym(A)sym(B) = A-1*B。例3-19 求解:(1)Ax = B,其中A,B; (2)psin(2x+t) = q,其中t為未知參數(shù)。解:A=2 5;1 3;B=4 -6;2 1;>> x=linsolve(A,B)x = 2, -23 0, 8 >> solve('p*sin(2*x+t)=q','t') ans =-2*x+asin(q

37、/p)2. ss = solve (s1, s2, , sn) ss = solve (s1, s2, , sn, v1, v2, , vm) x1, x2, , xn = solve (s1, s2, , sn) x1, x2, , xn = solve (s1, s2, , sn, v1, v2, , vm)參數(shù)說明:·s1, s2, , sn:包含方程組(n個)等式的字符串(可以是函數(shù)名或者是描述方程組的字符串表達(dá)式)·x1, x2, , xn:若是第一種情形,對n個方程s1, s2, , sn中默認(rèn)的變量求解;若是第二種情形,對n個方程s1, s2, , sn中指定

38、的變量求解;結(jié)果分別賦給向量x1, x2, , xn中的分量;·v1, v2, , vm:方程組s1, s2, , sn中的m個變量;·ss:在第一種情形中,對n個方程s1, s2, , sn中默認(rèn)的變量求解;若是第二種情形,對n個方程s1, s2, , sn中指定的變量求解;n與m不一定相等,即可能是超定方程組或是不定方程組,結(jié)果賦給出ss,ss為一個解向量。例3-20 求下列方程組的解(1) (2)(3) (4)解:x1,y1=solve('x2+x*y+y=3','x2-4*x+3=0')x2,y2=solve('a*x2+y2

39、=0','x-y=1')x3,y3,z3=solve('x*y2+z2=0','y-z=1','x2-5*x+6=0')x,y=solve('sin(x+y)-exp(x)*y=0','x2-y=2')計算結(jié)果為:x1 = 1 3y1 = 1 -3/2x2 = 1/2/(a+1)*(-2*a+2*(-a)(1/2)+1 1/2/(a+1)*(-2*a-2*(-a)(1/2)+1y2 = 1/2/(a+1)*(-2*a+2*(-a)(1/2) 1/2/(a+1)*(-2*a-2*(-a)(1/

40、2)x3 = 2 2 3 3y3 = 1/3+1/3*i*2(1/2) 1/3-1/3*i*2(1/2) 1/4+1/4*i*3(1/2) 1/4-1/4*i*3(1/2)z3 = -2/3+1/3*i*2(1/2) -2/3-1/3*i*2(1/2) -3/4+1/4*i*3(1/2) -3/4-1/4*i*3(1/2)x =y = 34.208227234306296508646214438330由于第四個方程組沒有精確的解析解,所以給出的是數(shù)值形式的解。3.6 函數(shù)極值在高等數(shù)學(xué)中,求函數(shù)的極值(最值)是函數(shù)導(dǎo)數(shù)的應(yīng)用之一。不過高等數(shù)學(xué)中的求值過程比較麻煩,而在Matlab中卻顯得輕松自如。因為Matlab有兩個功能強大的求值函數(shù)fminbnd、fminsearch。3.6.1 一元函數(shù)的極值函數(shù)fminbnd是用于專門求單變量函數(shù)的最小值。使用形式為:x = fminbnd(fun,x1,x2)x = fminbnd(fun,x1,x2,options)x = fminbnd(fun,x1,x2,options,p1,p2,.)x,fval = fminbnd(.)x,fval,exitflag = fminbnd(.)x,fval,exitflag,output = fminbnd(.)參數(shù)說明:·fun:目標(biāo)

溫馨提示

  • 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

提交評論