矩陣及基本運(yùn)算_第1頁(yè)
矩陣及基本運(yùn)算_第2頁(yè)
矩陣及基本運(yùn)算_第3頁(yè)
矩陣及基本運(yùn)算_第4頁(yè)
矩陣及基本運(yùn)算_第5頁(yè)
已閱讀5頁(yè),還剩32頁(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)介

1、一、矩陣及基本運(yùn)算1 矩陣是MATLAB的基本運(yùn)算對(duì)象 數(shù)值(標(biāo)量)可以看成11階的矩陣 向量(一維數(shù)組)可看成1n或n1階的矩陣矩陣的建立:2 直接輸入以左方括號(hào)開始,右方括號(hào)結(jié)尾同一行中的元素用逗號(hào)或空格隔開行與行之間用分號(hào)或回車隔開 a=1,2,3;4,5,6;7,8,9a = 1 2 3 4 5 6 7 8 9 a=1 2 3;4 5 6;7 8 9 a=1 2 3 4 5 6 7 8 9這種方法適用于矩陣元素個(gè)數(shù)較少的情況這種方法適用于矩陣元素個(gè)數(shù)較少的情況3 用矩陣編輯器輸入在命令窗口創(chuàng)建變量雙擊它打開矩陣編輯器在編輯器中輸入或修改,完畢后關(guān)閉即可4 用矩陣函數(shù)創(chuàng)建矩陣zeros(

2、m,n): mn階零矩陣eye(m,n): n階單位矩陣ones(m,n): mn階元素全為1的矩陣rand(m,n): mn階均勻隨機(jī)矩陣,取值0到1randn(m,n): mn階正態(tài)隨機(jī)矩陣,取值0到1magic(n): n階魔方矩陣(矩陣每行、每列及兩對(duì)角線上的元素和相等)hilb(n): n階Hilbert矩陣,即矩陣元素為1/(i+j-1)A=ones(2,3)A = 1 1 1 1 1 1 eye(3)ans = 1 0 0 0 1 0 0 0 15A=diag(v,k)生成主對(duì)角線方向上的第k(整數(shù))層元素為向量v的矩陣. 規(guī)定: k=0時(shí),表示矩陣的主對(duì)角線 k0時(shí),表示主對(duì)角

3、線的平行位置上方的第k層 K v=1 2 3 A=diag(v,0) B=diag(v,1)例 隨機(jī)生成數(shù)值在10到30之間的含5個(gè)元素的行向量7 10+(30-10)*rand(1,5)ans = 25.8441 29.1898 23.1148 10.7142 26.9826例 生成三對(duì)角矩陣8A = 1 2 0 0 0 0 1 1 2 0 0 0 0 2 1 2 0 0 0 0 3 1 2 0 0 0 0 1 1 2 0 0 0 0 2 1 a1=ones(1,6) a2=2*ones(1,5) a3=1 2 3 1 2 A=diag(a1,0)+diag(a2,1)+diag(a3,-1

4、)9 通過(guò)文件生成有時(shí)我們需要處理一些沒(méi)有規(guī)律的數(shù)據(jù),或數(shù)據(jù)量很大時(shí),如在命令窗口輸入,清除后再次使用需要重新輸入,這就增加工作量. 解決方案:直接把數(shù)據(jù)作為矩陣輸入到M文件(Matlab的程序代碼文件)中作為變量保存到MAT文件中 Save Filename var1 var2 var3 Load Filename數(shù)組的生成:10 使用from:step:to生成數(shù)組 當(dāng)step省略時(shí),表示步長(zhǎng)step=1當(dāng)step為負(fù)數(shù)時(shí),可以創(chuàng)建降序的數(shù)組除前面的矩陣輸入外,還有 a=1:0.5:2a = 1.0000 1.5000 2.0000 b=1:3b = 1 2 3 c=3:-1:1c = 3

5、 2 111linspace(a,b,n) 生成從a到b之間線性分布的n個(gè)元素的數(shù)組. 如果n省略,則默認(rèn)為100.logspace(a,b,n) 生成從10a到10b之間按對(duì)數(shù)等分的n個(gè)元素的數(shù)組. 如果n省略,則默認(rèn)為50. a=linspace(1,9,5)a = 1 3 5 7 9 b=logspace(1,5,3)b = 10 1000 100000logspace(a,b,n)=10.linspace(a,b,n)復(fù)數(shù)矩陣的輸入12 A=1+2i 3+4i; 5+6i 7+8i A=1 3;5 7+i*2 4;6 8設(shè)A = 1 + 2i 3 + 4i 5 + 6i 7 + 8i矩

6、陣元素操作 MATLAB利用下標(biāo)來(lái)訪問(wèn)矩陣中的元素,下標(biāo)可以是向量.13設(shè) A = 1 2 3 4 5 6 7 8 9 b=A(2,3)b = 6 c=A(1 2,2 3)c = 2 3 5 6 如果在某個(gè)下標(biāo)位置只有一個(gè):號(hào),則表示取對(duì)應(yīng)的所有列或行. 用end表示某一維數(shù)中的最大值.14設(shè) A = 1 2 3 4 5 6 7 8 9 b=A(2,:)b = 4 5 6 c=A(:,2:3)c = 2 3 5 6 8 9 d=A(1:2,end)d = 3 6 用單下標(biāo)來(lái)表示 即將矩陣的所有列按先左后右的次序接成“一維長(zhǎng)列”,然后再對(duì)元素位置進(jìn)行編號(hào)15設(shè) A = 1 2 3 4 5 6 7

7、 8 9 A(4)ans = 2 A(2:5)ans = 4 7 2 5 矩陣的合并16A = 1 2 3 4 5 6B = 7 8 9 10C = 11 12 13 A,Bans = 1 2 3 7 8 4 5 6 9 10 A;Cans = 1 2 3 4 5 6 11 12 13 通過(guò)空矩陣“ ”對(duì)矩陣元素進(jìn)行刪除17設(shè) A = 1 2 3 4 5 6 7 8 9 A(2,:)=A = 1 2 3 7 8 9 A=A = isempty(A)ans = 1矩陣的運(yùn)算 基本運(yùn)算加(+):A+B, A+k (每個(gè)元素都加k)減(-):A-B, A-k乘(*):A*B左除():AB, 即A-1

8、B, A必須為方陣右除(/): A/B, 即AB-1, B必須為方陣乘冪(): An, A必須為方陣轉(zhuǎn)置(): transpose(A)或 A點(diǎn)運(yùn)算(.): 其加、減、乘、除和乘方都是對(duì)兩個(gè)相同維數(shù)的矩陣進(jìn)行對(duì)應(yīng)元素的運(yùn)算.1819A = 1 2 3 3 2 1 1 2 5B = -2 9 -15 6 15 -21 -6 11 -2例 已知求出AX=B和XA=B的解 ABans = 2.0000 4.0000 3.5000 1.0000 1.0000 -19.0000 -2.0000 1.0000 6.5000 inv(A)*Bans = 2.0000 4.0000 3.5000 1.0000

9、 1.0000 -19.0000 -2.0000 1.0000 6.5000 B/Aans = 25.2500 -3.2500 -17.5000 30.7500 -0.7500 -22.5000 26.2500 -5.7500 -15.0000 B*inv(A)ans = 25.2500 -3.2500 -17.5000 30.7500 -0.7500 -22.5000 26.2500 -5.7500 -15.000020A = 1 2 3 4 5 6B = 7 8 -9 -1 -3 -2例 已知 A.*Bans = 7 16 -27 -4 -15 -12 A./Bans = 0.1429 0

10、.2500 -0.3333 -4.0000 -1.6667 -3.0000 A.Bans = 7.0000 4.0000 -3.0000 -0.2500 -0.6000 -0.3333 A.3ans = 1 8 27 64 125 216 關(guān)系運(yùn)算關(guān)系運(yùn)算符:(小于)、 (大于)、 =(大于等于)、=(等于)、=(不等于)關(guān)于運(yùn)算在對(duì)應(yīng)元素之間進(jìn)行,結(jié)果是一個(gè)二值矩陣,其中0表示“假”,1表示“真”.21相關(guān)函數(shù) I = find(A) 返回矩陣A的非零元素的線性指標(biāo)I J= find(A) 返回矩陣A的非零元素的行、列指標(biāo),分別存于I和JA = 1 0 0 4 find(A)ans = 1

11、4 I J=find(A)I = 1 2J = 1 222 A=1 4 3 2;B=5 4 1 3; AB %比較A與B矩陣的元素大小,輸出邏輯數(shù)值ans = 0 0 1 0 x=find(A=B) %找出A與B中對(duì)應(yīng)元素相等的下標(biāo)x = 2 A(find(A=B) %找出A和B中對(duì)應(yīng)元素相等的元素ans = 4例 23例 找出以下矩陣中絕對(duì)值大于3的所有元素 A=zeros(2,5); A(:)=-4:5A = -4 -2 0 2 4 -3 -1 1 3 5 L=abs(A)3L = 1 0 0 0 1 0 0 0 0 1A = -4 -2 0 2 4 -3 -1 1 3 5 XL=A(fi

12、nd(L)XL = -4 4 5 邏輯運(yùn)算邏輯運(yùn)算符:&(與)、 |(或)、 (非)、 xor(異或)、&(先決與)、|(先決或)24xyx&yxIyxxor(x,y)000010010111100101111100&: 當(dāng)該運(yùn)算符的左邊為1時(shí),才執(zhí)行右邊的運(yùn)算|: 當(dāng)該運(yùn)算符的左邊為0時(shí),才執(zhí)行右邊的運(yùn)算25A = 1 2 3 4B = 4 3 2 1例 設(shè) (AB)&(A=B)ans = 0 0 0 0 (AB)&(A1)ans = 0 0 1 1 (AB)|(A1)ans = 0 1 1 1 xor(AB, A1)ans = 0 1 0 0

13、其它一些常用矩陣函數(shù)size(A): 返回矩陣的行數(shù)和列數(shù)size(A,1): 返回行數(shù)size(A,2): 返回列數(shù)length(a): 返回向量a的長(zhǎng)度reshape(A,m,n): 重排矩陣A為m行n列矩陣,A必須為m*n個(gè)元素26A = 1 2 3 4 5 6a = 1 2 3 4 5 size(A)ans = 2 3 size(A,2)ans = 3 reshape(A,3,2)ans = 1 5 4 3 2 6 length(a)ans = 5max(a): 返回向量a的最大元素max(A,dim): 返回矩陣沿著第dim維方向的最大元素向量max(A,B): 返回矩陣A,B中對(duì)應(yīng)

14、位置上的較大元素min: 返回最小元素,用法類似maxmean(a): 返回向量a的平均值mean(A,dim): 返回矩陣A第dim維方向上平均值median: 返回中位數(shù),用法類似meansum:求元素和,用法類似meanprod:求元素積,用法類似meancumsum:求元素累積和,用法類似meansort(a):對(duì)向量a進(jìn)行升序排序sort(A,dim,mode): 對(duì)矩陣A沿著第dim維方向排序,mode:ascend(升序,默認(rèn))、descend(降序)2728a = 12 5 65 9 3 1A = 1 2 3 4 5 6 max(A,1)ans = 4 5 6 max(A,2)

15、ans = 3 6 max(A)ans = 4 5 6 max(a)ans = 65 min(a)ans = 129a = 12 5 65 9 3 1A = 1 2 3 4 5 6 sum(a)ans = 95 cumsum(a)ans = 12 17 82 91 94 95 sum(A,1)ans = 5 7 9 sum(A,2)ans = 6 15 sum(A)ans = 5 7 930a = 12 5 20 9 3 1A = 1 2 3 4 5 6 prod(a)ans = 32400 prod(A,1)ans = 4 10 18 prod(A,2)ans = 6 120 prod(A)

16、ans = 4 10 1831a = 12 5 20 9 3 1A = 1 2 3 4 5 6 sort(a)ans = 1 3 5 9 12 20 sort(a,ascend)ans = 1 3 5 9 12 20 sort(a,descend)ans = 20 12 9 5 3 1 sort(A,1)ans = 1 2 3 4 5 6 sort(A,2)ans = 1 2 3 4 5 6 sort(A)ans = 1 2 3 4 5 6例 計(jì)算以下例子32 1+2+100 1*2*100 6+9+12+297+300 sum(1:100)ans = 5050 prod(1:100)ans

17、= 9.3326e+157 sum(6:3:300)ans = 15147階乘:factorial(N)=prod(1:N) factorial(100)ans = 9.3326e+15733設(shè) a = 12 5 10 9 3 1A = 1 2 3 4 5 6用多種方法求數(shù)組a的算術(shù)平均值,矩陣A每行的算術(shù)平均值 mean(a)ans = 6.6667 sum(a)/length(a)ans = 6.6667 sum(a)/size(a,2)ans = 6.6667 mean(A,2)ans = 2 5 sum(A,2)/size(A,2)ans = 2 534例 設(shè)a= 91, 98, 50

18、, 75, 69, 88,利用sort函數(shù)求出排名第二大的數(shù) a=91, 98, 50, 75, 69, 88; b index=sort(a,descend)b = 98 91 88 75 69 50index = 2 1 6 4 5 3 a(index(2)ans = 91 a=91, 98, 50, 75, 69, 88; b=sort(a,descend)b = 98 91 88 75 69 50 b(2)ans = 91b=a(index)35例 某農(nóng)場(chǎng)飼養(yǎng)的動(dòng)物所能達(dá)到的最大年齡為15歲,將其分為三個(gè)年齡組:第一組,05歲;第二組,610歲;第三組,1115歲. 動(dòng)物從第二個(gè)年齡組起開始繁殖后代,經(jīng)長(zhǎng)期統(tǒng)計(jì):第二個(gè)年齡組的動(dòng)物在其年齡段平均繁殖4個(gè)后代,第三個(gè)年齡組的動(dòng)物在其年齡段平均繁殖3個(gè)后代,第一個(gè)年齡組和第二個(gè)年齡組的動(dòng)物能順利進(jìn)入下一個(gè)年齡組的存活率分別為1/2和1/4. 假設(shè)農(nóng)場(chǎng)現(xiàn)有三個(gè)年齡段的動(dòng)物各1000,問(wèn):5年、10年及15年后農(nóng)場(chǎng)飼養(yǎng)的動(dòng)物總數(shù)及農(nóng)場(chǎng)三個(gè)年齡段的動(dòng)物

溫馨提示

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