第3章 MATLAB矩陣分析與處理_第1頁(yè)
第3章 MATLAB矩陣分析與處理_第2頁(yè)
第3章 MATLAB矩陣分析與處理_第3頁(yè)
第3章 MATLAB矩陣分析與處理_第4頁(yè)
第3章 MATLAB矩陣分析與處理_第5頁(yè)
已閱讀5頁(yè),還剩38頁(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)介

第3章MATLAB矩陣分析與處理3.1特殊矩陣3.2矩陣變換3.3矩陣求值3.4矩陣的特征值與特征向量3.5稀疏矩陣3.1特殊矩陣

3.1.1通用的特殊矩陣

常用的產(chǎn)生通用特殊矩陣的函數(shù)有:

zeros:產(chǎn)生全0矩陣(零矩陣)。

ones:產(chǎn)生全1矩陣(幺矩陣)。

eye:產(chǎn)生單位矩陣。

rand:產(chǎn)生0~1區(qū)間均勻分布的隨機(jī)矩陣。

randn:產(chǎn)生均值為0,方差為1的標(biāo)準(zhǔn)正態(tài)分布隨機(jī)矩陣。例3-1建立隨機(jī)矩陣:

(1)在區(qū)間[20,50]內(nèi)均勻分布的5階隨機(jī)矩陣。

(2)均值為0.6、方差為0.1的5階正態(tài)分布隨機(jī)矩陣。分析:產(chǎn)生(0,1)區(qū)間均勻分布隨機(jī)矩陣使用rand函數(shù),假設(shè)得到了一組滿足(0,1)區(qū)間均勻分布的隨機(jī)數(shù)xi,則若想得到在任意[a,b]區(qū)間上均勻分布的隨機(jī)數(shù),只需用yi=a+(b-a)xi計(jì)算即可。產(chǎn)生均值為0、方差為1的標(biāo)準(zhǔn)正態(tài)分布隨機(jī)矩陣使用randn函數(shù),假設(shè)已經(jīng)得到了一組標(biāo)準(zhǔn)正態(tài)分布隨機(jī)數(shù)xi,如果想更一般地得到均值為μ、方差為σ2的隨機(jī)數(shù),可用yi=μ+σxi計(jì)算出來(lái)。>>x=20+(50-20)*rand(5)x=44.441722.926224.728424.256639.672247.173828.354949.117832.652821.071423.809636.406448.715047.472145.473947.401348.725234.561343.766248.019838.970848.946744.008448.784840.3621>>y=0.6+sqrt(0.1)*randn(5)y=0.92720.88091.05490.56770.59050.82990.23730.70280.52360.54790.50400.26200.36130.70090.79850.69290.34401.03330.69890.94570.3510-0.33110.05880.32650.95083.1.2用于專門(mén)學(xué)科的特殊矩陣

(1)魔方矩陣

魔方矩陣有一個(gè)有趣的性質(zhì),其每行、每列及兩條對(duì)角線上的元素和都相等。對(duì)于n階魔方陣,其元素由1,2,3,…,n2共n2個(gè)整數(shù)組成。MATLAB提供了求魔方矩陣的函數(shù)magic(n),其功能是生成一個(gè)n階魔方陣。例3-2將101~125等25個(gè)數(shù)填入一個(gè)5行5列的表格中,使其每行每列及對(duì)角線的和均為565。

M=100+magic(5)M=

117124101108115

123105107114116

104106113120122

110112119121103

111118125102109

(2)范得蒙矩陣

范得蒙(Vandermonde)矩陣最后一列全為1,倒數(shù)第二列為一個(gè)指定的向量,其他各列是其后列與倒數(shù)第二列的點(diǎn)乘積。可以用一個(gè)指定向量生成一個(gè)范得蒙矩陣。在MATLAB中,函數(shù)vander(V)生成以向量V為基礎(chǔ)向量的范得蒙矩陣。例如,A=vander([1;2;3;5])

A=

1111

8421

27931

1252551(3)希爾伯特矩陣

在MATLAB中,生成希爾伯特矩陣的函數(shù)是hilb(n)

使用一般方法求逆會(huì)因?yàn)樵紨?shù)據(jù)的微小擾動(dòng)而產(chǎn)生不可靠的計(jì)算結(jié)果。MATLAB中,有一個(gè)專門(mén)求希爾伯特矩陣的逆的函數(shù)invhilb(n),其功能是求n階的希爾伯特矩陣的逆矩陣。例3-3求4階希爾伯特矩陣及其逆矩陣。

命令如下:

formatrat%以有理形式輸出

H=hilb(4)

H=11/21/31/41/21/31/41/51/31/41/51/61/41/51/61/7H=invhilb(4)

(4)托普利茲矩陣

托普利茲(Toeplitz)矩陣除第一行第一列外,其他每個(gè)元素都與左上角的元素相同。生成托普利茲矩陣的函數(shù)是toeplitz(x,y),它生成一個(gè)以x為第一列,y為第一行的托普利茲矩陣。這里x,y均為向量,兩者不必等長(zhǎng)。toeplitz(x)用向量x生成一個(gè)對(duì)稱的托普利茲矩陣。例如

T1=toeplitz(1:6)T2=toeplitz(1:4,1:5)(5)伴隨矩陣

MATLAB生成伴隨矩陣的函數(shù)是compan(p),其中p是一個(gè)多項(xiàng)式的系數(shù)向量,高次冪系數(shù)排在前,低次冪排在后。例如,為了求多項(xiàng)式的x3-7x+6的伴隨矩陣,可使用命令:

p=[1,0,-7,6];

compan(p)(6)帕斯卡矩陣

我們知道,二次項(xiàng)(x+y)n展開(kāi)后的系數(shù)隨n的增大組成一個(gè)三角形表,稱為楊輝三角形。由楊輝三角形表組成的矩陣稱為帕斯卡(Pascal)矩陣。函數(shù)pascal(n)生成一個(gè)n階帕斯卡矩陣。例3-4求(x+y)5的展開(kāi)式。

在MATLAB命令窗口,輸入命令:

pascal(6)

矩陣次對(duì)角線上的元素1,5,10,10,5,1即為展開(kāi)式的系數(shù)。3.2矩陣變換

3.2.1對(duì)角陣與三角陣

1.對(duì)角陣

只有對(duì)角線上有非0元素的矩陣稱為對(duì)角矩陣,對(duì)角線上的元素相等的對(duì)角矩陣稱為數(shù)量矩陣,對(duì)角線上的元素都為1的對(duì)角矩陣稱為單位矩陣。

(1)提取矩陣的對(duì)角線元素

設(shè)A為m×n矩陣,diag(A)函數(shù)用于提取矩陣A主對(duì)角線元素,產(chǎn)生一個(gè)具有min(m,n)個(gè)元素的列向量。

diag(A)函數(shù)還有一種形式diag(A,k),其功能是提取第k條對(duì)角線的元素。(2)構(gòu)造對(duì)角矩陣

設(shè)V為具有m個(gè)元素的向量,diag(V)將產(chǎn)生一個(gè)m×m對(duì)角矩陣,其主對(duì)角線元素即為向量V的元素。

diag(V)函數(shù)也有另一種形式diag(V,k),其功能是產(chǎn)生一個(gè)n×n(n=m+|k|)對(duì)角陣,其第k條對(duì)角線的元素即為向量V的元素。例3-5先建立5×5矩陣A,然后將A的第一行元素乘以1,第二行乘以2,…,第五行乘以5。

A=[17,0,1,0,15;23,5,7,14,16;4,0,13,0,22;10,12,19,21,3;...

11,18,25,2,19];

D=diag(1:5);

D*A

%用D左乘A,對(duì)A的每行乘以一個(gè)指定常數(shù)2.三角陣

三角陣又進(jìn)一步分為上三角陣和下三角陣,所謂上三角陣,即矩陣的對(duì)角線以下的元素全為0的一種矩陣,而下三角陣則是對(duì)角線以上的元素全為0的一種矩陣。

(1)上三角矩陣

求矩陣A的上三角陣的MATLAB函數(shù)是triu(A)。

triu(A)函數(shù)也有另一種形式triu(A,k),其功能是求矩陣A的第k條對(duì)角線以上的元素。例如,提取矩陣A的第2條對(duì)角線以上的元素,形成新的矩陣B。

(2)下三角矩陣

在MATLAB中,提取矩陣A的下三角矩陣的函數(shù)是tril(A)和tril(A,k),其用法與提取上三角矩陣的函數(shù)triu(A)和triu(A,k)完全相同。3.2.2矩陣的轉(zhuǎn)置與旋轉(zhuǎn)

1.矩陣的轉(zhuǎn)置

轉(zhuǎn)置運(yùn)算符是小數(shù)點(diǎn)后面接單引號(hào)(.')。還有一種轉(zhuǎn)置叫共軛轉(zhuǎn)置,其運(yùn)算符是單引號(hào)('),它在轉(zhuǎn)置的基礎(chǔ)上還要取每個(gè)數(shù)的復(fù)共軛。例如,B=A'得到的B就是A的共軛轉(zhuǎn)置矩陣,等價(jià)于B=conj(A).'或B=conj(A.')。如果矩陣的元素都是實(shí)數(shù),那么轉(zhuǎn)置和共軛轉(zhuǎn)置的結(jié)果是一樣的。2.矩陣的旋轉(zhuǎn)

利用函數(shù)rot90(A,k)將矩陣A旋轉(zhuǎn)90o的k倍,當(dāng)k為1時(shí)可省略。

3.矩陣的左右翻轉(zhuǎn)

對(duì)矩陣實(shí)施左右翻轉(zhuǎn)是將原矩陣的第一列和最后一列調(diào)換,第二列和倒數(shù)第二列調(diào)換,…,依次類推。MATLAB對(duì)矩陣A實(shí)施左右翻轉(zhuǎn)的函數(shù)是fliplr(A)。

4.矩陣的上下翻轉(zhuǎn)

MATLAB對(duì)矩陣A實(shí)施上下翻轉(zhuǎn)的函數(shù)是flipud(A)。3.2.3矩陣的逆與偽逆1.矩陣的逆對(duì)于一個(gè)方陣A,如果存在一個(gè)與其同階的方陣B,使得:

A·B=B·A=I(I為單位矩陣)

則稱B為A的逆矩陣,當(dāng)然,A也是B的逆矩陣。

求一個(gè)矩陣的逆是一件非常煩瑣的工作,容易出錯(cuò),但在MATLAB中,求一個(gè)矩陣的逆非常容易。求方陣A的逆矩陣可調(diào)用函數(shù)inv(A)。

如果矩陣A不是一個(gè)方陣,或者A是一個(gè)非滿秩的方陣時(shí),矩陣A沒(méi)有逆矩陣,但可以找到一個(gè)與A的轉(zhuǎn)置矩陣A‘同型的矩陣B,使得:

A·B·A=A

B·A·B=B

此時(shí)稱矩陣B為矩陣A的偽逆,也稱為廣義逆矩陣。在MATLAB中,求一個(gè)矩陣偽逆的函數(shù)是pinv(A)。2用矩陣求逆方法求解線性方程組在線性方程組Ax=b兩邊各左乘A-1,有A-1Ax=A-1b由于A-1A=I,故得x=A-1b例3-7用求逆矩陣的方法解線性方程組。命令如下:A=[1,2,3;1,4,9;1,8,27];b=[5,-2,6]';x=inv(A)*b也可以運(yùn)用左除運(yùn)算符“\”求解線性代數(shù)方程組。3.矩陣的偽逆如果矩陣A不是一個(gè)方陣,或者A是一個(gè)非滿秩的方陣時(shí),矩陣A沒(méi)有逆矩陣,但可以找到一個(gè)與A的轉(zhuǎn)置矩陣A'同型的矩陣B,使得:A·B·A=AB·A·B=B此時(shí)稱矩陣B為矩陣A的偽逆,也稱為廣義逆矩陣。在MATLAB中,求一個(gè)矩陣偽逆的函數(shù)是pinv(A)。3.3矩陣求值3.3.1方陣的行列式

把一個(gè)方陣看作一個(gè)行列式,并對(duì)其按行列式的規(guī)則求值,這個(gè)值就稱為所對(duì)應(yīng)的行列式的值。在MATLAB中,求方陣A所對(duì)應(yīng)的行列式的值的函數(shù)是det(A)。3.4.2矩陣的秩與跡

1.矩陣的秩

矩陣線性無(wú)關(guān)的行數(shù)與列數(shù)稱為矩陣的秩。在MATLAB中,求矩陣秩的函數(shù)是rank(A)。

2.矩陣的跡

矩陣的跡等于矩陣的對(duì)角線元素之和,也等于矩陣的特征值之和。在MATLAB中,求矩陣的跡的函數(shù)是trace(A)。3.3.3向量和矩陣的范數(shù)

矩陣或向量的范數(shù)用來(lái)度量矩陣或向量在某種意義下的長(zhǎng)度。范數(shù)有多種方法定義,其定義不同,范數(shù)值也就不同。1.向量的3種常用范數(shù)及其計(jì)算函數(shù)

在MATLAB中,求向量范數(shù)的函數(shù)為:

(1)norm(V)或norm(V,2):計(jì)算向量V的2—范數(shù)。

(2)norm(V,1):計(jì)算向量V的1—范數(shù)。

(3)norm(V,inf):計(jì)算向量V的∞—范數(shù)。2.矩陣的范數(shù)及其計(jì)算函數(shù)

MATLAB提供了求3種矩陣范數(shù)的函數(shù),其函數(shù)調(diào)用格式與求向量的范數(shù)的函數(shù)完全相同。3.3.4矩陣的條件數(shù)

在MATLAB中,計(jì)算矩陣A的3種條件數(shù)的函數(shù)是:

(1)cond(A,1)計(jì)算A的1—范數(shù)下的條件數(shù)。

(2)cond(A)或cond(A,2)計(jì)算A的2—范數(shù)數(shù)下的條件數(shù)。

(3)cond(A,inf)計(jì)算A的∞—范數(shù)下的條件數(shù)。3.4矩陣的特征值與特征向量

在MATLAB中,計(jì)算矩陣A的特征值和特征向量的函數(shù)是eig(A),常用的調(diào)用格式有3種:

(1)E=eig(A):求矩陣A的全部特征值,構(gòu)成向量E。

(2)[V,D]=eig(A):求矩陣A的全部特征值,構(gòu)成對(duì)角陣D,并求A的特征向量構(gòu)成V的列向量。(3)[V,D]=eig(A,‘nobalance’):與第2種格式類似,但第2種格式中先對(duì)A作相似變換后求矩陣A的特征值和特征向量,而格式3直接求矩陣A的特征值和特征向量。(4)可用A*V和V*D來(lái)驗(yàn)證結(jié)果。例3-8用求特征值的方法解方程。

3x5-7x4+5x2+2x-18=0

p=[3,-7,0,5,2,-18];

A=compan(p);%A的伴隨矩陣

x1=eig(A)%求A的特征值x1=

2.1837+0.0000i

1.0000+1.0000i

1.0000-1.0000i

-0.9252+0.7197i

-0.9252-0.7197i

x2=roots(p)%直接求多項(xiàng)式p的零點(diǎn)3.5稀疏矩陣3.5.1矩陣存儲(chǔ)方式

MATLAB的矩陣有兩種存儲(chǔ)方式:完全存儲(chǔ)方式和稀疏存儲(chǔ)方式。1.完全存儲(chǔ)方式完全存儲(chǔ)方式是將矩陣的全部元素按列存儲(chǔ)。2.稀疏存儲(chǔ)方式稀疏存儲(chǔ)方式僅存儲(chǔ)矩陣所有的非零元素的值及其位置,即行號(hào)和列號(hào)。在MATLAB中,稀疏存儲(chǔ)方式也是按列存儲(chǔ)的。設(shè):A是具有稀疏特征的矩陣,其完全存儲(chǔ)方式是按列存儲(chǔ)全部12個(gè)元素:1、0、2、0、5、0、0、0、0、0、0、7,其稀疏存儲(chǔ)方式如下:(1,1),1,(3,1),2,(2,2),5,(3,4),7括號(hào)內(nèi)為元素的行列位置,其后面為元素值。3.5.2稀疏存儲(chǔ)方式的產(chǎn)生1.將完全存儲(chǔ)方式轉(zhuǎn)化為稀疏存儲(chǔ)方式函數(shù)A=sparse(S)將矩陣S轉(zhuǎn)化為稀疏存儲(chǔ)方式的矩陣A。當(dāng)矩陣S是稀疏存儲(chǔ)方式時(shí),則函數(shù)調(diào)用相當(dāng)于A=S。sparse函數(shù)還有其他一些調(diào)用格式。①sparse(m,n):生成一個(gè)m×n的所有元素都是0的稀疏矩陣。②sparse(u,v,S):其中u、v、S是3個(gè)等長(zhǎng)的向量。S是要建立的稀疏矩陣的非零元素,u(i)、v(i)分別是S(i)的行和列下標(biāo),該函數(shù)建立一個(gè)max(u)行

溫馨提示

  • 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)論