6.1MATLAB陣列的建立和操作
陣列運算是MATLAB計算的基礎。文中是以二維陣列陣列的運算為例,可自行推廣到多維陣列和多維矩陣的運算。
矩陣和陣列的區別與聯絡
區別:
(1)矩陣是數學上的概念,而陣列是計算機程式設計領域的概念。
(2)作為一種變換或者對映算符的體現,矩陣運算有著明確而嚴格的數學規則。而陣列運算是MATLAB軟體定義的規則,其目的是為了使資料管理方便,操作簡單,命令形式自然,執行有效
聯絡:
在MATLAB中,矩陣是以陣列的形式存在的。因此,一維陣列相當於向量,二維陣列相當於矩陣,所以矩陣是陣列的子集。
陣列的建立與操作
1.在MATLAB中一般用方括號[],逗號“,”,空格和分號“;”來建立陣列,陣列中同一行的元素使用逗號或者空格進行隔開,不同行用分號進行分隔。
2.通過冒號建立一維陣列
在MATLAB中,可以通過冒號建立一維陣列
X=A:step:B
A是建立一維陣列的第一個變數,step是每次遞增或遞減的數值,知道最後一個元素個B的差的絕對值小於等於step的絕對值為止。
當指定step時,系統預設step=1.
3.通過logspace函式建立一維陣列
MATLAB中常用logspace()函式建立一維陣列,呼叫方式如下:
(1)y=logspace(a,b);該函式建立行向量y,第一個元素為10^a,最後一個元素為10^b,形成總是為50個元素的等比數列。
(2) y=logspace(a,b,n);該函式建立行向量y,第一個元素為10^a,最後一個元素為10^b,形成總數為n個元素的等比數列。
4.通過函式建立一維陣列
MATLAB常用linspace()函式建立一維陣列,該函式的呼叫方式如下。
(1)y=linspace(a,b) :該函式建立行向量y,第一個元素為a,最後一個元素為b,形成總數為100個元素的等差數列。
(2)y=linspace(a,b,n):該函式建立行向量y,第一個元素為a,最後一個元素為b,形成總數為n個元素的等差數列。
注:當n<2時,y=linspace(a,b,n)函式返回的數值為b。
陣列的訪問
A(a:b) 訪問陣列的第a個到第b個元素
A([a b])訪問陣列的第a個和第b個元素
A(a:end)訪問陣列第a個元素到最後一個元素
A(end:-1:a) 訪問陣列最後一個元素,逆序到第a個元素