03-MATLAB矩陣運(yùn)算解析_第1頁
03-MATLAB矩陣運(yùn)算解析_第2頁
03-MATLAB矩陣運(yùn)算解析_第3頁
03-MATLAB矩陣運(yùn)算解析_第4頁
03-MATLAB矩陣運(yùn)算解析_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

3MATLAB矩陣運(yùn)算在MATLAB中,矩陣和向量這兩個詞經(jīng)常換用。嚴(yán)格的說,矩陣是指以實(shí)數(shù)或復(fù)數(shù)為元素的長方形向量。MATLAB的數(shù)值矩陣運(yùn)算能力十分強(qiáng)大。MATLAB提供了幾十個函數(shù)用來生成各種各樣的矩陣。導(dǎo)航矩陣定義矩陣的基本運(yùn)算特殊矩陣稀疏矩陣3.1 矩陣定義在MATLAB中,矩陣用中括號括起來表示,同一行的數(shù)據(jù)用空格或逗號分隔,不同行用分號分隔。1直接輸入A=ones(3,4)%生成3×4階全1矩陣B=magic(3)%生成3×3階魔方矩陣C=randn(2,3)%生成2×3階正態(tài)分布隨機(jī)數(shù)矩陣I=eye(3)%生成3×3階單位矩陣3.2 矩陣的基本運(yùn)算3.2.1矩陣的加減運(yùn)算兩個矩陣的加減運(yùn)算必須滿足以下兩個條件之一維數(shù)相同,即行數(shù)和列數(shù)分別相同;其中一個為標(biāo)量。A=[124;231;145];B=ones(3);X=A+B3.2 矩陣的基本運(yùn)算3.2.2矩陣的乘法在MATLAB中,乘法運(yùn)算符為*。矩陣A*B有意義,當(dāng)且僅當(dāng)滿足下列條件之一:矩陣A的列數(shù)等于矩陣B的行數(shù);其中之一為標(biāo)量。A=magic(3)%A為3階魔方矩陣B=pascal(3)%B為3階帕斯卡矩陣C=A*BD=A.*B%注意乘法和點(diǎn)乘的區(qū)別3.2 矩陣的基本運(yùn)算3.2.3矩陣的除法A=[1,2;3,4];B=[2,2;2,2];X=A./B%A中元素除以B中相應(yīng)元素Y=A.\B%B中元素除以A中相應(yīng)元素A=rand(3)B=pascal(3)A\B%矩陣左除,結(jié)果與inv(A)*B相同B/A%矩陣右除,結(jié)果與B*inv(A)相同3.2 矩陣的基本運(yùn)算3.2.4矩陣轉(zhuǎn)置和共軛轉(zhuǎn)置A=[1,2,3]B=A‘%實(shí)矩陣的普通轉(zhuǎn)置C=[2+3i,1+2i]D=C’%對于復(fù)矩陣,“’”表示共軛轉(zhuǎn)置E=C.‘%普通轉(zhuǎn)置用“.’”表示普通轉(zhuǎn)置用“.’”表示3.2 矩陣的基本運(yùn)算3.2.5矩陣指數(shù)運(yùn)算A=[1,3;2,4;2,5];X=exp(A)%其中X(i,j)=exp(A(i,j))3.3 特殊矩陣3.3.1空矩陣a=1:4;b=find(a<1)%操作無結(jié)果時返回空矩陣b=[]size([])%空矩陣維數(shù)為0ans=00sum([])ans=03.3 特殊矩陣3.3.2eye矩陣,zeros矩陣eye(3,2)%單位矩陣可以是長方陣ans=100100[eye(2),zeros(1,2)]ans=1000103.3 特殊矩陣3.3.3

hadamard矩陣哈得馬德矩陣廣泛的應(yīng)用在信號處理和數(shù)值分析中。哈得馬德矩陣滿足H‘*H=n*I的性質(zhì),當(dāng)n能被4整除時,哈得馬德矩陣存在hadamard(4)ans=11111-11-111-1-11-1-113.4 稀疏矩陣在實(shí)際應(yīng)用中,常常碰到含有大量0元素的矩陣,這樣的矩陣稱為稀疏矩陣。如果按照普通矩陣對待稀疏矩陣,0元素將占據(jù)大量的存儲空間和內(nèi)存空間,影響運(yùn)算速度。為了提高計算機(jī)的存儲效率,采用了只存儲非零元素和表示這些元素行列位置的下標(biāo)數(shù)組的方法。同時,為了回避對零元素進(jìn)行復(fù)雜的代數(shù)運(yùn)算,采取了特殊的算法來求解這樣的矩陣問題。3.4 稀疏矩陣類型函數(shù)名描述基本稀疏矩陣生成函數(shù)Speye生成單位稀疏矩陣Sprand生成均勻分布隨機(jī)稀疏矩陣Sprandn生成正態(tài)分布隨機(jī)稀疏矩陣sprandsym生成對稱的隨機(jī)稀疏矩陣spdiags由帶狀數(shù)據(jù)生成稀疏矩陣轉(zhuǎn)換函數(shù)sparse生成稀疏矩陣full把稀疏矩陣轉(zhuǎn)化成滿矩陣find查找非零元素下標(biāo)spconvert從其它格式中載入稀疏矩陣3.4 稀疏矩陣稀疏矩陣基本運(yùn)算函數(shù)nnz求稀疏矩陣非零元素個數(shù)nonzeros求非零元素nzmax非零元素所占存儲空間spones把稀疏矩陣的非零元素全部替換成1spalloc為稀疏矩陣分配空間issparse判斷是否是稀疏矩陣spfun只對矩陣的非零元素進(jìn)行運(yùn)算spy查看稀疏矩陣中非零元素的分布變換函數(shù)colmmd對列的秩作最小的變換symmmd對稱秩最小變換symrcmCuthill-McKee對稱逆變換colperm列變換randperm隨機(jī)變換dmpermDulmage-Mendelsohn變換線性代數(shù)相關(guān)函數(shù)線性代數(shù)相關(guān)函數(shù)Eigs求稀疏矩陣的特征值Svds求稀疏矩陣的奇異值Luinc不完全LU分解Cholinc不完全Cholesky分解Normest估計稀疏矩陣二范數(shù)Condest一范條件數(shù)估計3.4 稀疏矩陣線性代數(shù)相關(guān)函數(shù)線性代數(shù)相關(guān)函數(shù)Eigs求稀疏矩陣的特征值Svds求稀疏矩陣的奇異值Luinc不完全LU分解Cholinc不完全Cholesky分解Normest估計稀疏矩陣二范數(shù)Condest一范條件數(shù)估計Sprank求稀疏矩陣的結(jié)構(gòu)秩迭代法解線性方程組Pcg預(yù)處理共扼梯度法Bicg雙共扼梯度法bicgstab穩(wěn)定雙共扼梯度法Cgs共扼梯度平方法gmres最小殘差法qmr最小殘差平方法消元樹函數(shù)etree求矩陣的消元樹向量streeplot畫消元樹圖形treeplot畫向量的樹圖形treelayout顯示樹的結(jié)構(gòu)其它一些函數(shù)gplot按圖論畫出稀疏矩陣spy顯示稀疏結(jié)構(gòu)symbfact因式分解spparms稀疏矩陣程序參數(shù)設(shè)置spaugment產(chǎn)生對稱稀疏不定方陣3.4 稀疏矩陣3.4.1創(chuàng)建和轉(zhuǎn)換稀疏矩陣1直接創(chuàng)建稀疏矩陣u=[12334];v=[12234];s=[54321];S=sparse(u,v,s,4,4)%4*4的稀疏矩陣%稀疏矩陣的顯示與滿陣不同,只顯示非零元素3.4 稀疏矩陣3.4.1創(chuàng)建和轉(zhuǎn)換稀疏矩陣2稀疏矩陣和滿陣之間的轉(zhuǎn)換S=sparse(eye(5))full(S)whosNameSizeBytesClassA5x5200doublearrayS5x584sparsearray%稀疏矩陣更節(jié)省空間,維數(shù)增加后更明顯3.4 稀疏矩陣3.4.1創(chuàng)建和轉(zhuǎn)換稀疏矩陣3稀疏矩陣的查看loadwest0479%MATLAB內(nèi)置的稀疏矩陣west0479whosspy(west0479)%查看矩陣west0479的結(jié)構(gòu)圖spy(west0479,15)%采用15個像素單位的點(diǎn)來繪制稀%疏矩陣的結(jié)構(gòu)圖3.4 稀疏矩陣3.4.2稀疏矩陣的舉例speye(3)%生成3×3階單位稀疏矩陣,同sparse(eye(3))S=[0100;1000;0100;0010]A=sprand(S)%生成與S相同結(jié)構(gòu)的隨機(jī)稀疏矩陣B=sprandn(S)%生成與S相同結(jié)構(gòu)的正態(tài)隨機(jī)稀疏矩陣C=sprandsym(A)%由上述矩陣A的下三角及主對角線部分創(chuàng)建的對稱陣full(A)full(C)MATLAB中對滿矩陣的運(yùn)算和函數(shù)同樣可用在稀疏矩陣中3.5矩陣的常用操作方法

3.5.1查找矩陣中的元素1

find函數(shù):返回非零元素的索引和值X=[104-300086];find(X)X(find(X))find(X>1)X(find(X>1))3.5矩陣的常用操作方法

3.5.1查找矩陣中的元素A=[1:4;5:8];ind=find(A>3)%返回大于3的元素的線性索引[m,n]=find(A>3)%返回元素的行下標(biāo),列下標(biāo)A(find(A>3))=03.5矩陣的常用操作方法

3.5.1查找矩陣中的元素2ind2sub和sub2ind函數(shù)[I,J]=ind2sub(siz,IND)IND=sub2ind(siz,I,J)siz為矩陣的大小,IND線性索引值,I、J為行列下標(biāo)A=[1:4;5:8];ind=find(A>3);%返回大于3的元素的線性索引[I,J]=ind2sub(size(A),ind)%返回元素的行、列下標(biāo)IND=sub2ind(size(A),I,J)%返回線性索引3.5矩陣的常用操作方法

3.5.2刪除矩陣中的指定元素

溫馨提示

  • 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

提交評論