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

下載本文檔

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

文檔簡介

1、Matlab基礎(chǔ)向量與矩陣運(yùn)算向量與矩陣運(yùn)算q 向量與矩陣的生成向量與矩陣的生成向量與矩陣運(yùn)算向量與矩陣運(yùn)算u 向量的生成向量的生成 直接輸入直接輸入: a=1,2,3,4 冒號(hào)冒號(hào)運(yùn)運(yùn)算符算符a=1:4 = = a=1, 2, 3, 4b=0:pi/3:pi = b=0, 1.0472, 2.0944, 3.1416c=6:-2:0 = c = 6, 4, 2, 0例例: 從矩陣中抽取行或列從矩陣中抽取行或列 MATLAB是矩陣化程序設(shè)計(jì)語言,處理矩陣和向量運(yùn)算特別方便。向量與矩陣運(yùn)算向量與矩陣運(yùn)算u 矩陣的生成矩陣的生成 直接輸入直接輸入 A=1, 2, 3; 4, 5, 6; 7, 8,

2、 9 由函數(shù)生成由函數(shù)生成 通過編寫通過編寫m文件生成文件生成 x=1,2,3;y=2,3,4; A=x,y, B=x;y 由數(shù)據(jù)文件生成由數(shù)據(jù)文件生成已有數(shù)據(jù)文件已有數(shù)據(jù)文件 mydata.dat,存放一個(gè),存放一個(gè)5*3的數(shù)組,的數(shù)組,可用命令:可用命令: load mydata.dat 得到矩陣得到矩陣 mydata如矩陣是用戶自定義的大矩陣,經(jīng)常要用到,就如矩陣是用戶自定義的大矩陣,經(jīng)常要用到,就應(yīng)編寫一個(gè)應(yīng)編寫一個(gè)m文件保存。文件保存。常見矩陣生成函數(shù)常見矩陣生成函數(shù)zeros(m,n)生成一個(gè)生成一個(gè) m 行行 n 列的零矩陣,列的零矩陣,m=n 時(shí)可簡寫為時(shí)可簡寫為 zeros(

3、n)ones(m,n)生成一個(gè)生成一個(gè) m 行行 n 列的元素全為列的元素全為 1 的矩陣的矩陣, m=n 時(shí)可寫為時(shí)可寫為 ones(n)eye(m,n)生成一個(gè)主對(duì)角線全為生成一個(gè)主對(duì)角線全為 1 的的 m 行行 n 列矩陣列矩陣, m=n 時(shí)可簡寫為時(shí)可簡寫為 eye(n),即為即為 n 維單位矩陣維單位矩陣diag(X)若若 X 是矩陣,則是矩陣,則 diag(X) 為為 X 的主對(duì)角線向量的主對(duì)角線向量若若 X 是向量,是向量,diag(X) 產(chǎn)生以產(chǎn)生以 X 為主對(duì)角線的對(duì)角矩陣為主對(duì)角線的對(duì)角矩陣tril(A)提取一個(gè)矩陣的下三角部分提取一個(gè)矩陣的下三角部分triu(A)提取一個(gè)

4、矩陣的上三角部分提取一個(gè)矩陣的上三角部分rand(m,n)產(chǎn)生產(chǎn)生 01 間均勻分布的隨機(jī)矩陣間均勻分布的隨機(jī)矩陣 m=n 時(shí)簡寫為時(shí)簡寫為 rand(n)randn(m,n)產(chǎn)生均值為產(chǎn)生均值為0,方差為,方差為1的標(biāo)準(zhǔn)正態(tài)分布隨機(jī)矩陣的標(biāo)準(zhǔn)正態(tài)分布隨機(jī)矩陣m=n 時(shí)簡寫為時(shí)簡寫為 randn(n)矩陣操作矩陣操作q 提取矩陣的部分元素:提取矩陣的部分元素: 冒號(hào)運(yùn)算符冒號(hào)運(yùn)算符u A(:) A的所有元素的所有元素u A(:,:) 二維矩陣二維矩陣A的所有元素的所有元素u A(:,k) A的第的第 k 列,列, A(k,:) A的第的第 k 行行 u A(k:m) A的第的第 k 到第到第

5、m 個(gè)元素個(gè)元素u A(:,k:m) A的第的第 k 到第到第 m 列組成的子矩陣列組成的子矩陣A(:) 與與 A(:,:) 的區(qū)別的區(qū)別 ?如何獲得由如何獲得由 A 的第一、三行和第一、二列組成的子矩陣?的第一、三行和第一、二列組成的子矩陣?自己動(dòng)手矩陣操作矩陣操作q 矩陣的旋轉(zhuǎn)矩陣的旋轉(zhuǎn)u fliplr(A) 左右旋轉(zhuǎn)左右旋轉(zhuǎn)u flipud(A) 上下旋轉(zhuǎn)上下旋轉(zhuǎn)u rot90(A) 逆時(shí)針旋轉(zhuǎn)逆時(shí)針旋轉(zhuǎn) 90 度;度; u rot90(A,k) 逆時(shí)針旋轉(zhuǎn)逆時(shí)針旋轉(zhuǎn) k90 度度例例: A=1 2 3;4 5 6 B=fliplr(A) C=flipud(A) D=rot90(A),

6、E=rot90(A,-1)q 矩陣的復(fù)制矩陣的復(fù)制repmat(原矩陣原矩陣,行復(fù)制數(shù)行復(fù)制數(shù),列復(fù)制數(shù)列復(fù)制數(shù)) 將矩陣元素復(fù)制將矩陣元素復(fù)制矩陣操作矩陣操作q 矩陣的轉(zhuǎn)置與共軛轉(zhuǎn)置矩陣的轉(zhuǎn)置與共軛轉(zhuǎn)置u 共軛轉(zhuǎn)置共軛轉(zhuǎn)置u . 轉(zhuǎn)置,矩陣元素不取共軛轉(zhuǎn)置,矩陣元素不取共軛例例: A=1 2;2i 3i B=A C=A.點(diǎn)與單引號(hào)之間點(diǎn)與單引號(hào)之間不能有空格不能有空格!q 矩陣的行列刪除矩陣的行列刪除利用空矩陣?yán)每站仃嚒?”可從矩陣中刪除指定的行或列可從矩陣中刪除指定的行或列例例: A=1 2 3; 4 5 6 A(:,2)=矩陣操作矩陣操作q 改變矩陣的形狀:改變矩陣的形狀:reshap

7、ereshape(A,m,n): 將矩陣元素按將矩陣元素按 列方向列方向 進(jìn)行重組進(jìn)行重組重組后得到的新矩陣的元素個(gè)數(shù)重組后得到的新矩陣的元素個(gè)數(shù)必須與原矩陣元素個(gè)數(shù)相等必須與原矩陣元素個(gè)數(shù)相等! 矩陣操作矩陣操作q 查看矩陣的大?。翰榭淳仃嚨拇笮。簊izeu size(A) 列出矩陣列出矩陣 A 的的行數(shù)和列數(shù)行數(shù)和列數(shù)u size(A,1) 返回矩陣返回矩陣 A 的的行數(shù)行數(shù)u size(A,2) 返回矩陣返回矩陣 A 的的列列數(shù)數(shù)例例: A=1 2 3; 4 5 6 size(A) size(A,1) size(A,2)u length(x) 返回返回向量向量 x 的的長度長度u len

8、gth(A) 等價(jià)于等價(jià)于 max(size(A)矩陣基本運(yùn)算矩陣基本運(yùn)算q 矩陣的加減矩陣的加減:對(duì)應(yīng)分量進(jìn)行運(yùn)算對(duì)應(yīng)分量進(jìn)行運(yùn)算要求參與加減運(yùn)算的矩陣具有要求參與加減運(yùn)算的矩陣具有 相同的維數(shù)相同的維數(shù)例例: A=1 2 3; 4 5 6; B=3 2 1; 6 5 4 C=A+B; D=A-B;q 矩陣的普通乘法矩陣的普通乘法要求參與運(yùn)算的矩陣滿足線性代數(shù)中矩陣相乘要求參與運(yùn)算的矩陣滿足線性代數(shù)中矩陣相乘的的原則原則例例: A=1 2 3; 4 5 6; B=2 1; 3 4; C=A*B矩陣基本運(yùn)算矩陣基本運(yùn)算q 矩陣的矩陣的除法除法:/ & 右除和左除右除和左除 若 A 可逆

9、方陣,則AB A 的逆左乘的逆左乘 B = inv(A)*BB/A A 的逆右乘的逆右乘 B B*inv(A)X=B/A X*A=B 通常,矩陣除法可以理解為當(dāng)當(dāng) A 和和 B 行數(shù)相等行數(shù)相等時(shí)可進(jìn)行時(shí)可進(jìn)行左除左除當(dāng)當(dāng) A 和和 B 列數(shù)相等列數(shù)相等時(shí)可進(jìn)行時(shí)可進(jìn)行右除右除q 當(dāng)A為方陣,其結(jié)果與 inv(A)*B 基本一致;X=AB A*X=Bq當(dāng)A不為方陣,除法將分三種情況自動(dòng)檢測:若為超定方程組(既無解)除法將給出最小二乘意義上的近似解,即使向量AX-B 的長度最??;若為不定方程組(即無窮多解),除法將給出一個(gè)具有最多零元素的特解(不是通解);若為唯一解,除法將給出這個(gè)解。例例:11

10、(4212324213324(2xyxyxyzxyzxyxyxy()定解方程組)( )(不定方程組)( )超定方程組)解解: A=1 1;1 -1;B=1;4;x=ABx = 2.5000 -1.5000求得唯一解。 A=1 2 1;3 -2 1;B=1;4;x=ABx = 1.2500 -0.1250 0僅求得一個(gè)特解。 A=1 2;3 -2;1 -1;B=1;4;2;x=ABx = 1.2838 -0.1757求得一最小二乘近似解。解方程組解解: A=1 2;2 4;B=1;2;x=ABWarning: Matrix is singular to working precision.(Ty

11、pe warning off MATLAB:singularMatrix to suppress this warning.) x = Inf Inf %可見,不能直接求解。 A=1 2;2 4;0 0;B=1;2;0;x=AB %增加0 x+0y=0,使A不為方陣Warning: Rank deficient, rank = 1 tol = 2.9790e-015. x = 0 0.5000仍可求一特解。214242xyxy( )(奇異方程組)例例:求線性方程組的通解12341234123411221xxxxxxxxxxxx法一法一. 用rref化為行最簡形以后求解。 clear % 清除各

12、種變量 a=1 -1 1 -1;-1 1 1 -1;2 -2 -1 1;b=1;1;-1; rank(a),rank(a,b)ans = 2 2秩相等且小于,說明有無窮多解 rref(a,b)ans = 1 -1 0 0 0 0 0 1 -1 1 0 0 0 0 0% 通解為:x1=x2,x3=x4+1(x2, x4自由)解解:在有無窮多解的情況可用三種方法求得通解。法二法二. 先用除法求出一個(gè)特解,再用null求得齊次組的基礎(chǔ)解系。 clear;a=1 -1 1 -1;-1 1 1 -1;2 -2 -1 1;b=1;1;-1; x0=ab;x=null(a)Warning: Rank def

13、icient, rank = 2 tol = 2.1756e-015.x = -0.7071 0 -0.7071 0 -0.0000 0.7071 -0.0000 0.7071通解為k1*x(:,1)+k2*x(:,2)+x02232113221051327132xx 法三法三:使用solve求解。例:解方程% 求解符號(hào)行列式方程clear;syms x % 定義x為符號(hào)變量A=3,2,1,1;3,2,2-x2,1;5,1,3,2;7-x2,1,3,2 % 給系數(shù)矩陣賦值 D=det(A) % 計(jì)算含符號(hào)變量矩陣A的行列式Df=factor(D) % 對(duì)行列式D進(jìn)行因式分解 % 從因式分解的結(jié)

14、果,可以看出方程的解X=solve(D) % 求方程“D0”的解當(dāng)當(dāng) k 取何值時(shí)方程組有非零解?當(dāng)有非零解時(shí)求出其基礎(chǔ)解系。取何值時(shí)方程組有非零解?當(dāng)有非零解時(shí)求出其基礎(chǔ)解系。1234123412341234(12 )33303(2)33033(2)30333(11)0k xxxxxk xxxxxk xxxxxk x 例例:已知齊次線性方程組clear;syms k % 定義符號(hào)變量kA=1-2*k,3,3,3;3,2-k,3,3;3,3,2-k,3;3,3,3,11-k;D=det(A); % 算出系數(shù)矩陣的行列式Dkk=solve(D); % 解方程“D0”,得到解kk,即k值for i

15、=1:4 AA=subs(A,k,kk(i); % 分別把k值代入系數(shù)矩陣A中 fprintf(當(dāng)k=); disp(kk(i); % 顯示k的取值 fprintf(基礎(chǔ)解系為:n); disp(null(AA) % 計(jì)算齊次線性方程組“Ax=0”的基礎(chǔ)解系endzeros 生成0矩陣 eig 特征值、特征向量ones 生成1矩陣 diag 對(duì)角矩陣eye 生成單位矩陣 trace 方陣的跡linspace 生成等距行向量 rank 矩陣的秩rand 生成隨機(jī)矩陣 rref 行最簡形det 方陣的行列式 orth 正交規(guī)范 inv 方陣的逆 null 求基礎(chǔ)解系norm 范數(shù) jordan J

16、ordan 分解cond 方陣的條件數(shù) Ap A 的 p 次冪MATLAB矩陣運(yùn)算常用命令矩陣運(yùn)算常用命令例例:矩陣的特征值和特征向量:矩陣的特征值和特征向量 eig(A) 返回方陣A的特征值構(gòu)成的列向量 V,D=eig(A) 返回方陣A的特征值和特征向量。其中D為特征值構(gòu)成的對(duì)角陣,每個(gè)特征值對(duì)應(yīng)的V的為屬于該特征值的一個(gè)特征向量,每個(gè)特征向量都是單位向量,并且屬于同一特征值的線性無關(guān)特征向量已正交化 A=1 2 3;2 3 4;2 4 5;V,D=eig(A),t=eig(A)V = -0.3957 -0.2167 + 0.5832i -0.2167 - 0.5832i -0.5765 0

17、.6313 0.6313 -0.7149 -0.3914 - 0.2471i -0.3914 + 0.2471i D = 9.3329 0 0 0 -0.1665 + 0.2818i 0 0 0 -0.1665 - 0.2818i t = 9.3329 -0.1665 + 0.2818i -0.1665 - 0.2818iMATLAB系統(tǒng)默認(rèn)變量系統(tǒng)默認(rèn)變量i 或 j : 虛單元 正確:5+7j 錯(cuò)誤:5j7pi : 圓周率ans : 計(jì)算機(jī)結(jié)果的缺省變量名eps : 機(jī)器的零閾值 2.2204e-016 Inf 或 inf : 正無窮大 NaN 或 nan : 不定值(即無效數(shù)據(jù))變量的命名

18、變量的命名規(guī)則:規(guī)則:1)變量名、函數(shù)名區(qū)分字母的大、小寫。2)變量名由字母、數(shù)字和下劃線構(gòu)成,第一個(gè)字母必須是英文字母。3)有字符個(gè)數(shù)限制。 合法合法的數(shù)值形式舉例:的數(shù)值形式舉例: 3 -99 0.001 .19 -5.1+6.8i 7.8-6j (虛數(shù)) 9.4e6 1.3e-3 -4.5E33 (科學(xué)表示法)MATLAB中常見數(shù)學(xué)函數(shù)中常見數(shù)學(xué)函數(shù)sin、cos、tan、cot、sec、csc、asin、acos、atan、acot、asec、acsc、exp、log、log2、log10、sqrtabs、conj、real、imag、signfix、floor、ceil、round、mod、remmax、min、sum、mean、sort、fftnorm、rank、det、inv、eig、lu、qr、svd log 是自然對(duì)數(shù),即以是自然對(duì)數(shù),即以 e 為底數(shù)為底數(shù) mod(x,y) 結(jié)果與結(jié)果與 y 同號(hào),同號(hào),rem(x,y) 則與則與 x 同號(hào)同號(hào) max

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論