專欄系列文章,想學習的朋友可以先看看前面的文章。
矩陣的建立有多種方法,最簡單的可以通過在命令列視窗直接輸入乙個矩陣。這適合建立比較小的矩陣,把矩陣元素放進方括號中,每行的元素用逗號或者空格進行分割,每列使用分號進行分割。
此外還可以通過語句或函式來生成矩陣,例如函式eye()用於生成單位矩陣。
另外,還可以通過m檔案來建立矩陣,或者從外部資料檔案中匯入矩陣,例如通過函式imread()讀取,從而獲得影象資料的二維矩陣。
這裡我們看乙個示例
clear all;a=[
1:4;
5:8]
f1=a(2
,3)f2=a(
2)f3=a(4
)
結果為:
在這裡,大家應該會對f2和f3的結果表示疑惑,大家請記住:
在matlab中,矩陣是按列進行儲存的,所以a的第二個元素就是「5」,即f2為「5」;a的第四個元素是「6」,即f3為「6」。
接下來我們再看下乙個示例
clear all;a=[
1:4;
5:8;
9:12;
13:16]
f1=a(1
,:)f2=a(
:,3)
f3=a(1
:2,1
:2)f4=a(
1:end,end)
結果為:
a =1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
f1 =
1 2 3 4
f2 =37
1115
f3 =
1 25 6
f4 =48
1216
f1表示的是矩陣第一行的資訊,f2表示的是第三列的資訊,f3獲取乙個兩行兩列的矩陣,f4表示獲取矩陣的最後一列,end表示矩陣行或列的最後。
在matlab中,矩陣是通過列進行儲存的,先第一列再第二列,直到結束。矩陣元素可以通過單下標來獲取,也可以通過雙下標進行獲取,可以通過函式sub2ind()和ind2sub進行轉換。
我們來看一下示例:
clear all;a=[
1:4;
5:8;
9:12;
13:16]
ind1=
sub2ind
(size
(a),3,
4)a(ind1)a(
3,4)
[i,j]
=ind2sub
(size
(a),10)
ind2=
sub2ind
(size
(a),i,j)
a =
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
ind1 =
15
ans =
12
ans =
12
i =
2
j =
3
ind2 =
10
我們這裡可以看出用size()來獲取矩陣的大小(如果還有不太懂的,看看示例,我想很快也能明白的)
我們 再來看乙個例子
clear all;a=[
1:4;
5:8;
9:12;
13:16]
b=a>5a
(a>5)
=5f1=find
(a>4)
a(find
(a>4))=6
這裡的b=a>5表示的應該是 新建乙個矩陣b對應於a,大於5的在對應位置的值為1,小於或等於5的值為0。下面幾行**的意思我想應該也是很好理解的。
我們來看一下示例執行的結果:
a =
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
b =
0 0 0 0
0 1 1 1
1 1 1 1
1 1 1 1
a =
1 2 3 4
5 5 5 5
5 5 5 5
5 5 5 5
f1 =
2
3 46 7
8101112
1415
16
a =
1 2 3 4
6 6 6 6
6 6 6 6
6 6 6 6
應該還是非常好理解的,如果有困惑的地方可以去回顧溫習我前面的文章,當然收藏下來也是非常不錯的選擇哦!在程式中對矩陣的元素進行賦值,如果矩陣的行或列超出了矩陣的大小,則matlab自動擴充矩陣的大小,然後再進行賦值,擴充部分用零進行填充。
我們用乙個示例來簡單地看一下
可以看出在執行第四行**時,matlab自動地對矩陣進行了擴充
而最後一行**是想獲取矩陣第五行第五列的值,而這超出了矩陣的範圍所以會有報錯。
小白需要大佬們建議和指導!!
Matlab與數學建模
數學建模中,時常用到matlab畫圖,而繪製雙縱軸圖形有一定難度,在此提供一種雙縱軸繪圖函式 plotyy。具體 如下 t 0 0.02 pi 7 x cos t y exp t ax,ha,hb plotyy t,x,t,y ax 153.0322 156,0292 ha 155.1194 hb ...
MATLAB 6 數值微積分與方程求解
目錄 6.1數值微分與數值積分 6.2線性方程求解 6.3非線性方程求解與函式極值計算 6.4常微分方程數值求解 dx diff x 計算向量x的向前差分,dx i x i 1 x i dx diff x,n 計算向量x的n階向前差分 dx diff a,n,dim 計算矩陣的n階差分,dim 1時...
數學建模(MATLAB入門)
meshgrid 向量轉化為矩陣 x 3 1 3 y 1 1 5 x,y meshgrid x,y clc 清空命令列視窗螢幕 clear 清空資料 surf函式 繪製可以得到的是著色的三維曲面。shading函式 函式說明 是陰影函式控制曲面和圖形物件的顏色著色,即用來處理色彩效果的,包括以下三種...