matlab定義陣列和相關函式

2021-09-29 08:02:18 字數 1765 閱讀 2842

matlab作為乙個大型的計算軟體,裡面有許多對陣列的操作,所以陣列的定義和陣列的操作是乙個必不可少的部分。

在matlab中對陣列的定義較為靈活,因為特殊矩陣較多,所以有許多特定的定義方法。比較常見的有三種:

普通陣列定義:用和c語言類似的定義方法,用分號隔開每行資料。

全零陣列定義:zeros(x,y),x代表行數,y代表列數

全1陣列定義:ones(x,y),x代表行數,y代表列數

設 a 是乙個矩陣,則在 matlab 中用如下符號表示它的元素:

a(i,j)表示矩陣 a 的第 i 行第 j 列元素。

a(:,j)表示矩陣 a 的第 j 列。

a(i,:)表示矩陣 a 的第 i 行。

a(:,:)表示 a 的所有元素構造 2 維矩陣

a(:)表示以矩陣 a 的所有元素按列構成的乙個列矩陣。

a(i)表示矩陣 a(:)的第 i 個元素。這個是按照一列一列數的。

陣列的運算非常的多,在此只闡述幾種最常見的

length

向量的大小或陣列的長度

ndims

陣列的維數

numel

陣列的元素數量

size

陣列的維度

iscolumn

確定輸入是否為列向量

isempty

確定陣列是否為空

ismatrix

確定輸入是否為矩陣

isrow

確定輸入是否為行向量

isscalar

確定輸入是否為標量

isvector

確定輸入是否為向量

blkdiag

從輸入引數構造塊對角矩陣

circshift

迴圈移位

ctranspose

復共軛轉置

diag

矩陣對角矩陣和對角線

flipdim

沿著指定的尺寸翻轉陣列

fliplr

從左到右翻轉矩陣

flipud

向下翻轉矩陣

ipermute

反轉n-d陣列的置換維度

permute

重新排列n-d陣列的維度

repmat

複製和平鋪陣列

reshape重塑陣列

rot90旋轉矩陣90度

shiftdim

移動維度

issorted

確定設定元素是否按排序順序

sort

按公升序或降序排列陣列元素

sortrows

按公升序排列行

squeeze刪除單例維度

transpose轉置

vectorize

向量化表示式

Matlab相關函式

img imread su.bmp matlab讀入影象的資料是uint8,而matlab中數值一般採用double型 64位 儲存和運算。所以要先將影象轉為double格式的才能運算 img double img 將乙個 50 50 的灰度值陣列寫入mygray.png。a rand 50 imw...

Matlab 陣列 基本函式和概念

1,直接輸入 1 整個輸入陣列必須以方括號為其首尾 2 按行輸入每個元素,同行元素之間必須用逗號,或者空格分隔 3 行與行之間必須用分號或者回車隔開 4 矩陣元素可以是數,也可以是有實際值的算術表示式 2,命令生成法 方法一利用冒號表示式生成陣列 變數 初值 步長 終值 步長預設為1 方法二線性取樣...

Matlab自己定義函式

matlab提供了強大的函式庫供使用者呼叫,但也支援使用者自定義函式。本文使用了範德堡大學教授akos ledeczi授課中的樣例來一步步說明怎樣在matlab中自定義函式。首先,在command window中輸入edit命令。開始編輯函式。本函式實現的是隨機生成乙個3行4列的矩陣。該矩陣的元素取...