MATLAB基礎知識(二)

上一邊文章我們一起了解了一些基本的函數,那麼我們這篇文章繼續來了解剩下幾個常用的函數:

1.size函數:
size函數是用來返回矩陣的大小,返回一個行向量。
A=[1 2 3;4 5 6]
B=[1 2 3 4 5 6]
size(A);
size(B);
在這裏插入圖片描述
從圖中可以看出size函數返回的是矩陣的大小,也就是矩陣的行數和列數,A是一個2行3列的矩陣,B是一個1行6列的矩陣。
我們也可以把返回的大小用常量表示出來
A=[1 2 3;4 5 6];
[r,c]=size(A)
在這裏插入圖片描述
如果我們只是想返回一個常量,行向量或者列向量
我們也可以這樣寫
r=size(A,1);
c=size(A,2)
1表示行向量,2表示列向量
在這裏插入圖片描述
2.repmat函數:
B = repmat(A,m,n):將矩陣A複製m×n塊,即把A作爲B的元素,B由m×n個A平鋪而成
A = [1,2,3;4,5,6];
B = repmat(A,2,1)
B = repmat(A,3,2)
在這裏插入圖片描述

MATLAB如何進行矩陣的運算?

MATLAB在矩陣的運算過程中,+號和-號代表矩陣的加法和減法,號和/號代表矩陣之間的乘法和除法。
A = [1,2;3,4];
B = [1,0;1,1];
A * B
在這裏插入圖片描述
B的逆矩陣:inv(B)
B
inv(B)
Ainv(B)
在這裏插入圖片描述
A/B
在這裏插入圖片描述
兩個形狀相同的矩陣對應元素之間的乘除法需要使用“.
”和“./”
A=[1 2; 3 4];
B=[1 0; 1 1];
A.*B
A./B在這裏插入圖片描述
矩陣也可以進行常數相乘或相除操作
*和.在常數與矩陣的相乘操作中起到的操作相同,除法操作相同
在這裏插入圖片描述
在這裏插入圖片描述
如果給矩陣乘方只能用.^
A=[ 1 2;3 4];
A.^2
在這裏插入圖片描述如果寫的是A^2,它的作用和A
A是相同的,如上圖

MATLAB中求特徵值和特徵向量

在Matlab中,計算矩陣A的特徵值和特徵向量的函數是eig(A)函數,有以下兩種常用方法:
A=[1 2 3;4 5 6;7 8 9];
B=eig(A)
求矩陣A的全部特徵值,構成向量B
在這裏插入圖片描述
[V,D]=eig(A)
求矩陣A的全部特徵值,構成對角陣D,並求A的特徵向量構成V的列向量。(V的每一列都是D中與之相同列的特徵值的特徵向量)
在這裏插入圖片描述
3.find函數:
用來返回向量或者矩陣中不爲0的元素的位置索引。
X = [1 0 4 -3 0 0 0 8 6];
b = find(X)
在這裏插入圖片描述
如果想返回前幾個向量,後面的常數就寫成幾,例如返回前2個不爲0的元素的位置
在這裏插入圖片描述

但是上面針對的是一維向量,若X是一個二維(有行和列)矩陣,該怎樣返回呢?

MATLAB在存儲矩陣時是一列一列存儲的
X(5)和X(9)將返回什麼呢?
在這裏插入圖片描述
如果你需要輸出的是按照行和列該怎樣做呢?
X = [1 0 4 -3 0 0 0 8 6];
[r,c] = find(X)
在這裏插入圖片描述
[r,c] = find(X,1)
只找第一個非0元素
在這裏插入圖片描述

矩陣和常數的比較大小方法

](https://img-blog.csdnimg.cn/20200124142633215.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNDM3MDg1,size_16,color_FFFFFF,t_70)

在C語言中我們學到判斷語句用if,那麼在MATLAB裏同樣也用到的是if進行判斷

注意:if結尾的語句不用分號,語句的最後一定要以end結尾!!!裏面的語句一定一定要記住縮進這個問題
在這裏插入圖片描述
到這裏MATLAB中常用的函數整理完畢,打好基礎才能更好的發揮,本人也是剛開始學習MATLAB,如果文檔中有錯誤,請告訴我奧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章