




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第3章MATLAB在高等數學中的應用3.1矩陣分析3.2多項式運算3.3數據的分析與統計3.4函數分析與數值積分
3.1矩陣分析
1.矢量范數和矩陣范數
矩陣范數是對矩陣的一種測度。矢量的p范數和矩陣A的p范數分別定為:當p=2時為常用的歐拉范數,一般p還可取l和∞。這在MATLAB中可利用norm函數實現,p缺省時為p=2。格式:n=norm(A)功能:計算矩陣A的最大奇異值,相當于n=max(svd(A))。格式:n=norm(A,p)功能:norm函數可計算幾種不同類型的矩陣范數,根據p的不同可得到不同的范數
2.矩陣求逆及行列式值
⑴矩陣求逆函數inv及行列式值函數det逆矩陣的定義:對于任意階n×n
方陣A,如果能找到一個同階的方陣V,使得滿足:A*V=I。其中I為n階的單位矩陣eye(n)。則V就是A的逆矩陣。數學符號表示為:V=A-1。逆矩陣V存在的條件是A的行列式不等于0。格式:V=inv(A)功能:返回方陣A的逆矩陣V。格式:X=det(A)功能:計算方陣A的行列式值。
⑵偽逆矩陣函數pinv偽逆矩陣的MATLAB定義:從數學意義上講,當矩陣A為非方陣時,其矩陣的逆是不存在的。在MATLAB中,為了求線性方程組的需要,把inv(A′*A)*A′的運算定義為偽逆函數pinv,這樣對非方陣,利用偽逆函數pinv可以求得矩陣的偽逆,偽逆在一定程度上代表著矩陣的逆。格式:C=pinv(A)功能:計算非方陣A的偽逆矩陣。3.線性代數方程求解
寫成矩陣形式可表示為:AX=B或
XA=B。其中系數矩陣A的階數為m×n。在MATLAB中,引入矩陣除法求解。
(1)求解方程AX=B
格式:X=A\B
條件:矩陣A與矩陣B的行數必須相等。
(2)求解方程XA=B
格式:
X=B/A
條件:矩陣A與矩陣B的列數必須相等。一般線性方程組的4.矩陣的分解
(1)三角(LU)分解函數lu
所謂三角解就是將一個方陣表示成兩個基本三角陣的乘積(A=LU),其中一個為下三角矩陣L,另一個為上三角形矩陣U,因而矩陣的三角分解又叫LU分解或叫LR分解。矩陣分解的兩個矩陣分別可表示為:
格式一:[L,U]=lu(A)
功能:返回一個上三角矩陣U和一個置換下三角矩陣L(即下三角矩陣與置換矩陣的乘積),滿足A=L*U。格式二:[L,U,P]=lu(A)功能:返回上三角矩陣U,真正下三角矩陣L,及一個置換矩陣P(用來表示排列規則的矩陣),滿足L*U=P*A;如果P為單位矩陣,滿足A=L*U。(2)正交(QR)分解函數將矩陣A分解為一個正交矩陣與另一個矩陣的乘積稱為矩陣A的正交分解。格式一:[Q,R]=qr(A)功能:產生與A同維的上三角矩陣R和一個實正交矩陣或復歸一化矩陣Q,滿足:A=Q*R,Q’*Q=I。格式二:[Q,R,E]=qr(A)功能:產生一個置換矩陣E,一個上三角矩陣R(其對角線元素降序排列)和一個歸一化矩陣Q,滿足A*E=Q*R;5.奇異值分解
矩陣A的奇異值和相應的一對奇異矢量u、v滿足:同樣利用奇異值構成對角陣,相應的奇異矢量作為列構成兩個正交矩陣U、V,則有:其中AT表示轉置矩陣。由于U和V正交,因此可得奇異值分解:格式一:[U,S,V]=svd(x)功能:返回3個矩陣,使得X=U*S*V’。其中S為與X相同維數的矩陣,且其對角元素為非負遞減。格式二:S=svd(A)功能:返回奇異值組成的向量。6.矩陣的特征值分析
矩陣A的特征值和特征矢量,滿足:以特征值構成對角陣,相應的特征矢量作為列構成矩陣V,則有:如果V為非奇異,則上式就變成了特征值分解:格式一:d=eig(A)功能:返回方陣A的全部特征值所構成的向量。格式二:[V,D]=eig(A)功能:返回矩陣V和D。其中對角陣D的對角元素為A的特征值,V的列向量是相應的特征向量,使得A*V=V*D。7.矩陣的冪次運算:A^p在MATLAB中,矩陣的冪次運算是指以下兩種情況:
1、矩陣為底數,指數是標量的運算操作;
2、底數是標量,矩陣為指數的運算操作。兩種情況都要求矩陣是方陣,否則,將顯示出錯信息。(1)矩陣的正整數冪如果A是一個方陣,p是一個正整數,那么冪次表示A自己乘p次。(2)矩陣的負數冪如果A是一個非奇異方陣,p是一個正整數,那么A^(-p)表示inv(A)自己乘p次。
(3)矩陣的分數冪如果A是一個方陣,p取分數,它的結果取決于矩陣的特征值的分布。(4)矩陣的元素冪、按矩陣元素的冪利用運算符“A.^p”實現矩陣的元素冪或按矩陣元素的冪運算。
8.矩陣結構形式的提取與變換
(1)矩陣左右翻轉函數fliplr()格式:X=fliplr(A)(2)矩陣上下翻轉函數flipud格式:X=flipud(A)(3)矩陣階數重組函數reshape格式一:X=reshape(A,n,m)功能:將矩陣A中的所有元素按列的秩序重組成n×m階矩陣X,當A中沒有m×n個元素時會顯示出錯信息。格式二:X=reshape(A,m,n,p,...)或X=reshape(A,[m,n,p,...])功能:從A中形成多維陣列(m×n×p×...)。(4)矩陣整體反時針旋轉函數rot90()格式一:X=rot90(A)功能:將矩陣按反時針旋轉90o。格式二:X=rot90(A,k)功能:將矩陣按反時針旋轉k*90o,其中k應為整數。(5)對角矩陣和矩陣的對角化函數diag()格式一:X=diag(A,k)功能:當A為n元向量時,可得n+abs(k)階的方陣X,其A的元素處于第k條對角線上;k=0表示主對角線,k>0表示在主對角線之上,k<0表示在主對角線之下。當A為矩陣時,X=diag(A,k)得到列向量X,它取自于X的第k個對角線上的元素。格式二:X=diag(A)功能:當A為n元向量時,等同于k=0時的X=diag(A,k),即產生A的元素處于主對角線的對角方陣。當A為矩陣時,X=diag(A)相當于k=0。(6)取矩陣的左下三角部分函數tril()格式一:X=tril(A,k)功能:得到矩陣A的第k條對角線及其以下的元素;當k=0時表示主對角線,k>0表示主對角線之上,k<0表示主對角線以下。格式二:X=tril(A)功能:得到矩陣A的下三角陣。(7)取矩陣的右上三角部分函數triu()格式一:X=triu(A,k)功能:得到矩陣A的第k條對角線及其以上的元素;當k=0時表示主對角線,k>0表示主對角線之上,k<0表示主對角線以下。格式二:X=triu(A)功能:得到矩陣A的右上三角陣。(8)利用“:”將矩陣元素按列取出排成一列方法:X=A(:)’3.2多項式運算3.2.1多項式表示及其四則運算1.MATLAB的多項式表示對多項式:可表示成行向量:p=[1,0,–2,5]。用其系數的行向量p=[an,an-1,…,a1,a0]來表示。注意:如果
x的某次冪的系數為零,這個零必須列入系數向量中。例如一個一元3次多項式:
2.多項式的加減運算格式:A=B+C3.多項式相乘運算格式:w=conv(u,v)功能:返回u和v兩向量的卷積,也就是u和v代表的兩多項式的乘積。4.多項式相除格式:[q,r]=deconv(u,v)功能:給出商多項式q和余數多項式r,u為被除多項式
1.多項式求導函數polyder格式一:k=polyder(p)功能:返回多項式p的一階導數。格式二:k=polyder(u,v)功能:返回多項式u與v乘積的導數。格式三:[q,d]=polyer(u,v)功能:返回多項式商u/v的導數,返回的格式為:q為分子,d為分母。2.多項式的根求解多項式的根,即p(x)=0的解。格式:r=roots(p)功能:返回多項式p(x)的根。注意,MATLAB按慣例規定,多項式是行向量,根是列向量。3.2.2多項式求導、求根和求值3.多項式求值函數polyval()利用函數polyval可以求得多項式在某一點的值。格式:y=polyval(p,x)功能:返回多項式p在x處的值。其中x可以是復數,也可以是數組。當多項式的變量是矩陣時,構成的矩陣多項式可以利用polyvalm函數求值。格式:Y=polyvalm(p,X)功能:返回矩陣多項式p在X處的值。4.部分分式展開函數residue()格式一:[r,p,k]=residue(b,a)功能:把b(s)/a(s)展開成:其中r代表余數數組,p代表極點數組,ks代表部分分式展開的常數項。當分母多項式的階次數高于分子多項式的階次數時ks=0格式二:[b,a]=residue(r,p,k)功能:格式一的逆作用。3.3.3多項式擬合與多項式插值1.多項式擬合函數polyfit()格式:p=polyfit(x,y,n)功能:利用已知的數據向量x和y所確定的數據點,采用最小二乘法構造出n階多項式去逼近已知的離散數據,實現多項式曲線的擬合。其中p是求出的多項式系數,n階多項式應該有n+1個系數,故p的長度為n+1。2.多項式插值插值和擬合的不同點在于:①插值函數通常是分段的,人們關心的不是函數的表達式,而是插值出的數據點;②插值函數應通過給定的數據點。(1)一維插值函數interpl()格式:yi=interpl(x,y,xi,'method')功能:為給定的數據對(x,y)以及x坐標上的插值范圍向量xi,用指定所使用的插值方法method實現插值。yi是插值后的對應數據點集的y坐標。插值的方法method有以下6種可供選擇:nearest(最鄰近插值法)、linear(線性插值)、
spline(三次樣條插值)、cubic(立方插值)、pchip(三次Hermite插值)、v5cubic。(2)二維插值函數格式:zi=griddata(x,y,z,xi,yi,method)功能:非等距插值。已知的元素值由3個向量來描述:x、y和z。函數返回值為一矩陣zi,其元素的值由x、y和z確定的二元函數插值得到。method可為:‘linear’(默認值)、‘cubic’、‘nearest’、‘v4’。格式:zi=interp2(x,y,z,xi,yi,'method')功能:單調節點插值。已知的元素值由3個向量來描述:x、y和z。其中,x、y是已知數據組并且大小相同,z是相對應的已知點上的函數值;xi、yi是用于插值的矢量;zi是根據相應的插值方法并且與(xi,yi)對應的插值結果。插值方法method:‘linear’(默認值)、‘cubic’、‘nearest’、’spline’。(3)高維插值和交互式樣條插值·高維插值函數:三維插值及三維以上的插值稱為高維插值。用于實現高維插值的函數有:interp3(三維插值函數)、interpn(n維插值函數)、ndgrid(n維數據網格)。其調用格式與interp2函數很類似,這里就不再重述了,具體調用格式讀者可利用help來得。·交互式樣條插值函數在MATLAB6.0及以上版本中,樣條工具箱新增加了交互式插值樣條函數splinetool。該函數以對話框的形式為用戶提供了插值過程。格式一:splinetool功能:用于生成各種樣條曲線,這里幾乎包括所有生成樣條曲線方法。在它的初始菜單中提供了各種數據,用戶可以選擇一種生成的樣條曲線。格式二:splinetool(x,y)功能:用戶輸入數組x、y,并在用戶圖形界面下生成樣條曲線。
3.3數據分析與統計3.3.1數據基本操作1.求最大值函數max格式一:xM=max(x)功能:如果x是向量,返回x中最大值元素;如果x是矩陣,則將矩陣每列作為處理向量,返回一個行向量,其元素為矩陣每列中的最大元素;如果x為多維數組,則沿第一個非單元素維進行處理,求得各向量的最大值。格式二:xM=max(x,y)功能:返回一個與x和y一樣大小的數組,其元素取x或y中最大的一個。格式三:xM=max(x,[],dim)功能:返回數組(矩陣)x由標量dim所指定的維數(或行)中的最大值。格式四:[xM,I]=max(…)功能:返回最大值同時,返回一個下標向量。如果輸入數據x為復數,max函數返回復數最大模:max(abs(x))。2.求最小值函數min
min函數的調用格式與max函數的調用格式相同,只是功能與max函數相反,所得結果為最小值。如果輸入數據x為復數,min函數返回復數最小模:min(abs(x))3.求平均值函數mean格式:M=mean(x)功能:如果x為向量,則返回向量x的平均值;如果x為矩陣,則將矩陣每列當作向量處理,返回一個平均值行向量;如果A為多維數組,則沿第一個非單元素維進行處理,返回一個平均值數組。4.求中間值函數median
格式:M=median(x)功能:如果x為向量,則返回向量x的中間值;如果x為矩陣,則將矩陣每列當作為處理向量,返回一個中間值行向量;如果A為多維數組,則沿第一個非單元素維進行處理,返回一個中間值數組。5.求元素和函數sum格式:s=sum(x)功能:如果x為向量,則返回向量x的元素和;如果x為矩陣,則將矩陣每列當作向量處理,返回一個元素分別為各列和的行向量;如果A為多維數組,則沿第一個非單元素維進行計算,返回一個元素和數組。6.求標準偏差函數std與方差函數var對于向量有兩種標準差定義方法:其中
為樣本的元素個數。格式一:s=std(x)功能:x為向量,則返回用s1計算的標準偏差s。如果x是服從正態分布的隨機樣本,則s2為其方差的最佳無偏估計;如果x為矩陣,則返回矩陣每列標準差的行向量;如果x為多維數組,則沿x第一個非單元素維計算元素的標準偏差。格式二:s=std(x,
flag)功能:如果flag=0,與s=std(x)一樣;如果flag=1,則返回用s2計算的標準差。7.排序函數sort格式一:A=sort(x)功能:沿數組的不同維,以升序排列元素。元素可以為實數、復數和字符串。如果x是一個復數,其元素按其模的大小進行排列,如果模相等,則按其在區間[-pi,pi]上的相角進行排序。格式二:[A,index]=sort(x)功能:同時返回一個下標數組index。8.元素乘積函數prod格式一:A=prod(x)功能:如果x為向量,則計算其所有元素的乘積;如果x為矩陣,則每列作為向量處理,回一個每列元素積的行向量;如果x為多維數組,則沿第一個非單元素維進行處理,返回元素積數組。格式二:A=prod(x,dim)
功能:沿dim指定維,返回元素積。9.列元素累乘積函數cumprod()格式一:A=cumprod(x)功能:沿數組不同維,返回累乘積,返回值A與x大小一樣,與元素全乘積不同,它只將x中相應元素與其之前的所有元素相乘。當x是向量,返回x的元素累計積向量;如果x為矩陣,返回一個與x大小相同的每列累乘積的矩陣;如果x為多維數組則沿第一個非單元素維計算累乘積。格式二:A=cumprod(x,dim)功能:返回沿dim指足的維的元素的累乘積。10.累計和cumsum函數格式一:A=cumsum(x)功能:沿數組不同維,返回累乘和。當x是向量,返回x的元素累計和;如果x為短陣,返回一個與x大小相同按列累計和的矩陣;如果x為多維數組則沿第一個非單元素維計算累計和。格式二:A=cumsum(x,dim)功能:沿dim指定的維計算元素的累計和。3.3.2協方差與相關系數1.求協方差函數cov()協方差函數定義為:其中E表示數學期望;
格式一:C=cov(x)功能:如果x為向量,則返回向量元素的方差;如果x為矩陣,每列產生一個方差向量,cov(x)是一個協方差矩陣,diag(cov(x))為每列的方差向量,sqrt(diag(cov(x)))是一個標準差向量。格式二:C=cov(x,y)功能:返回x、y的協方差。x、y為長度相同的列向量。也可用C=cov([x,y])。格式二:S=corrcoef(x,y)功能:返回列向量x和y的相關系數,也可用S=corrcoef([xy])。2.求相關系數函數corrcoef()格式一:S=corrcoef(x)功能:根據輸入矩陣x,返回一個相關系數矩陣,相關系數S的矩陣與協方差矩陣C=cov(x)有關,由下式確定:3.3.3有限差分1.求元素之差函數diff()格式一:A=diff(x)功能:計算x中相鄰元素之間的差值或近似導數。如果x為向量,則返回一個比x少一個元素的向量,其元素值為[x(2)-x(1),x(3)-x(2),…,x(n)-x(n-1)];如果x為矩陣,則返回一個列間差值的矩陣:[x(2:n,:)-x(1:n-1,:)]。格式二:A=diff(x,
n)功能:使用diff函數遞歸
n次,計算第n階差值。例如,diff(x,2)=diff(diff(x))。格式三:A=diff(x,n,dim)功能:沿dim指定的維數計算第n階差值。如果n大于或等于dim維的長度,則返回空數組。2.求數值梯度函數gradient()
兩變量函數F(x,y)的梯度定義為
對N個變量函數
F(x,y,z,…)其梯度為
梯度可看作指向F增加方向的向量集。
格式一:Fx=gradient(F)功能:F為一向量,返回F的一維數值梯度,Fx與
一致,表示x方向的差分。
格式二:[Fx,
Fy]=gradient(F)功能:F為一矩陣,返回二維數值梯度的x和y分量。Fx與
表示x(列)方向的差分
Fy與
一致,表示y(行)方向的差分。每個方向點間距離設為1。3.4函數分析與數值積分3.4.1函數在MATLAB中的表示與函數的繪圖1.函數的表示與計算2.函數的繪制(1)單變量函數繪畫命令fplot
fplot()函數的功能能確保在輸出的圖形中表示出所有的奇異點。格式一:fplot(‘fun’,[xmin,xmax])功能:變量在[xmin,xmax]范圍,繪制指定函數’fun’的圖形。格式二:fplot(‘fun’,[xmin,xmax],tol)功能:在[xmin,xmax]范圍,以給定的精度tol<1,繪制指定函數’fun’的圖形,tol的缺省值為2e-3。(2)簡易的函數繪圖命令ezplot()格式一:ezplot(f,[a,b])功能:當f=f(x)時,繪制函數f=f(x)在a<x<b范圍函數曲線,并且所繪圖上還自動進行標注;當只輸入函數文件名,而沒有規定自變量的范圍,其默認的自變量范圍為當只輸入函數文件名,而沒有規定自變量的范圍,其默認的自變量范圍為、格式二:ezplot(f,[xmin,xmax,ymin,ymax])
功能:在xmin<x<xmax、ymin<y<ymax范圍繪制f(x,y)=0的曲線。格式三:ezplot(x,y,[tmin,tmax])功能:在tmin<t<tmax范圍繪制x=x(t)和y=y(t)的曲線。范圍缺省是變量t的范圍為0<t<2*pi。當f=f(x,y)時,則繪制a<x<b、a<y<b范圍內f(x,y)=0的函數曲線;3.4.2函數的極點、零點分析
1.極值分析函數(1)單變量函數求極小值函數fminbnd()格式:x=fminbnd(‘fun’,x1,x2)功能:返回函數fun(x)在區間[x1,x2]內的局部極小值。(2)多變量函數求極小值函數fminsearch()fminsearch函數與fminbnd函數類似,但是它面向多變量函數。格式:x=fminsearch(‘fun’,x0)功能:返回x0附近,函數fun的局部極小化向量x。x0可以是標量、向量或矩陣。2.單變量函數的零點分析格式:x=fzero(‘funname’,x0)功能:在x0附近,尋找函數funname的零點。funnamce為一個函數名的字符串,函數為單變量實值函數。Funnamce可以為函數句柄,也可以是inline對象。函數返回值的附近函數變號。如果x為兩元素向量,則認為x0為區間,f(x0(1))的符號與f(x0(2))的符號相反,否則返回NaN。如果找到Inf、NaN,或復數值,則停止在查找區間內的搜索。3.4.3函數的數值積分與微分1.函數的數值積分(1)低階數值積分函數quad格式一:q=quad(‘fun’,a,b)功能:采用自適應的Simpson積分方法,返回函數‘fun’在上限a和下限
b之間的數值積分。當給定一個輸入值向量,‘fun’必須返回一個輸出向量。函數‘fun’可以是函數名、函數句柄或字符串。格式二:q=quad(‘fud’,a,b,tol)功能:按指定絕對誤差tol返回數值積分值,tol
缺省值為1e-6。(2)高階數值積分函數quadl
(3)梯形面積法的積分函數trapz()格式一:T=trapz(Y)功能:以單位間隔,采用計算若干梯形面積的和來計算某函數的近似積分。如果Y為向量,計算Y的積分;如果Y是矩陣,得一個每列積分的行向量;如果Y為多維數組,則沿第一個非單元素維計算。格式二:T=trapz(X,Y)功能:用梯形積分法,依據X計算Y的積分。如果X為矢量,則Y必須是同大小的矢量;如果X是一列向量,并且數組Y第一非單元素維長度為length(X),則在該維中計算。(4)雙重積分函數dblquadMATLAB提供了一個求雙重積分的函數dblq
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 玩具市場營銷策略優化考核試卷
- 童車制造企業生產計劃與庫存管理考核試卷
- 眼鏡行業消費升級與市場機遇考核試卷
- 航空運動賽事策劃與推廣考核試卷
- 空中交通管制設備維護與管理考核試卷
- 電氣機械系統維修與改造考核試卷
- 山東省棗莊市四十一中市級名校2024-2025學年初三畢業考試生物試題含解析
- 山東滕州市第一中學2025屆高三第二次適應性(模擬)檢測試題生物試題含解析
- 濮陽職業技術學院《人物形象塑造II》2023-2024學年第一學期期末試卷
- 江西省贛州市大余縣2025年初三下學期期末教學質量檢測試題語文試題含解析
- 氣象行業天氣預報技能競賽理論試題庫資料(含答案)
- 水庫工程土石方開挖施工方案
- 小學奧數等差數列經典練習題
- 2024年江蘇省常州市中考一模英語試卷(含答案解析)
- 2024年福建省中考歷史試卷(含標準答案及解析)
- 人教版四年級下冊音樂《唱山歌》教學設計
- 車輛維修免責協議書范本
- 2024醫療設備器械試用協議書
- 甘肅省武威第七中學2023-2024學年八年級下學期期中考試英語試題
- ASME材料-設計許用應力
- 采用SF6N2混合氣體絕緣的GIS母線和GIL應用導則
評論
0/150
提交評論