MATLAB程式设计多维阵列.ppt
《MATLAB程式设计多维阵列.ppt》由会员分享,可在线阅读,更多相关《MATLAB程式设计多维阵列.ppt(28页珍藏版)》请在三一办公上搜索。
1、MATLAB 程式設計多維陣列,張智星(Roger Jang)http:/mirlab.org/jang台大資工系 多媒體檢索實驗室,11-1 多維陣列的定義,在 MATLAB 的資料型態中:一維陣列稱為向量(Vectors)二維陣列稱為矩陣(Matrices)維度(Dimensions)超過 1 的陣列則均可視為多維陣列(Multidimesional Arrays,簡稱 N-D Arrays)。,二維陣列(I),二維陣列又簡稱矩陣,具有兩個維度 橫列(Row)直行(Column),直行,橫列,二維陣列(II),二維陣列可對應至一個 X-Y 二維平面座標,圖示如下:,Y(行),X(列),三維
2、陣列(I),將兩個矩陣疊在一起,就形成第三個維度,此第三個維度可稱為頁(Page),圖示如下:,頁,行,頁,列,三維陣列(II),三維陣列可對應至一個 X-Y-Z 三維立體座標,圖示如下:,Z(頁),Y(行),X(列),三維陣列(III),三維陣列定址,可以(列,行,頁)定之。以維度為 342 的三維陣列為例,其定址方式可圖示如下:陣列 A 是三維陣列,其中 A(:,:,1)代表第一頁的二維陣列,A(:,:,2)代表第二頁的二維陣列。,四維陣列,四維陣列的第四個維度可視為箱(Box),而每個箱是由一個三維陣列所組成,其定址方式為(列,行,頁,箱)。例如:一個 2235 的四維陣列,可表示成 5
3、 個箱,每個箱都由一個 223 的三維陣列所組成,圖示如下:依此可類推至 n 維陣列,n 為任意自然數。,11-2 多維陣列的建立,欲建立一個簡單的多維陣列,可直接由 MATLAB 指令視窗內輸入 範例11-1:mDim01.m,A=1 0 2 5;4 1 8 7;3 2 6 3;A(:,:,2)=3 5 4 1;2 6 2 1;4 2 3 0,A(:,:,1)=1 0 2 5 4 1 8 7 3 2 6 3A(:,:,2)=3 5 4 1 2 6 2 1 4 2 3 0,多維陣列直接設定 範例11-2(I),上例是先建立一個二維陣列 A,再輸入第二頁的二維陣列 A(:,:,2),如此逐頁輸入
4、二維陣列的內容,即可建立三維陣列。如果直接設定某一個新頁的一個元素值,此時MATLAB 會將此頁其他未指定之元素直接設定為 0,範例如下:,多維陣列直接設定 範例11-2(II),範例11-2:mDim02.m,A=1 0 2 5;4 1 8 7;3 2 6 3;A(:,:,2)=3 5 4 1;2 6 2 1;4 2 3 0;A(2,1,3)=5,A(:,:,1)=1 0 2 5 4 1 8 7 3 2 6 3A(:,:,2)=3 5 4 1 2 6 2 1 4 2 3 0,A(:,:,3)=0 0 0 0 5 0 0 0 0 0 0 0,純量展開功能(Scalar Expansion)(I
5、),MATLAB 第五版新增純量展開(Scalar Expansion)功能,直接設定一個純量給多維陣列的一頁。承接上述範例,若要將陣列 A 的第二頁所有元素設為 7,可輸入如下:,純量展開功能(Scalar Expansion)(II),A(:,:,2)=7 A(:,:,1)=1 0 2 5 4 1 8 7 3 2 6 3A(:,:,2)=7 7 7 7 7 7 7 7 7 7 7 7A(:,:,3)=0 0 0 0 5 0 0 00 0 0 0,垂直並排多維陣列範例11-3(I),對於較複雜的多維陣列,可用 cat 指令來建立,其功能為並排數個陣列,並可指定並排時所用的維度其指令格式如下:
6、Z=cat(dim,A,B,C)A、B、C 為陣列dim 是將 A、B、C 合併時所用到的維度。(亦即在合併後,此維度的大小會改變。),垂直並排多維陣列範例11-3(II),欲將矩陣 A 與 B 上下(垂直)並排範例11-3:cat01.m,A=1 2;3 4;B=1 0;0 1;Z=cat(1,A,B)%數字 1 表示將陣列 A 與 B 上下垂直並排,Z=1 2 3 4 1 0 0 1,水平並排多維陣列範例11-4,欲將陣列 A 與 B 左右(水平)並排範例11-4:cat02.m,A=1 2;3 4;B=1 0;0 1;Z=cat(2,A,B)%數字 2 表示將陣列 A 與 B 左右水平並
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 程式 设计 多维 阵列

链接地址:https://www.31ppt.com/p-5439237.html