2021-05-12 14:32:11
MATLAB 函數sum的用法簡介
在malab中,函數sum是一個經常用到的函數,非常重要。下面小編將從三個方面詳細的介紹一下這個sum函數,分別是sum函數的基本用法、資料型別和使用的技巧。
1
操作物件是向量:
生成一個向量以及使用sum函數對向量進行操作.sum函數對向量的所有元素進行求和。
呼叫格式:b=sum(a); a表示行向量,b表示行向量求和的值。
例子如下:
>>a=[1 2 3 4 5];
>>b=sum(a);
b=
15
2
操作物件是一個矩陣:
生成一個矩陣以及使用sum函數對矩陣進行操作。在MATLAB預設的情況下,sum函數對矩陣的每一列的元素進行求和,結果是一個橫向量。
呼叫格式:b=sum(a); a表示矩陣,b表示矩陣每列求和得到的行向量。
例子如下:
>>a=[1 2 3
4 5 6
7 8 9];
>>sum(a)=
[12 15 18];
3
設定sum函數的參數列的引數dim,對矩陣每一列或者每一列求和或每一行求和,得到行向量或者列向量。
呼叫格式:b=sum(a,dim); a表示矩陣;dim等於1或者2,1表示每一列進行求和,2表示每一行進行求和;表示每列求和還是每行求和;b表示求得的行向量。
例子如下:
>>a=[1 2 3
4 5 6
7 8 9];
>>sum(a,1)=[12 15 18];
>>sum(a,2)=[ 6
15
24];
1
MATLAB預設的資料型別:如果沒有規定輸出與輸入變數的資料型別,則預設double型
生成一個矩陣以及用sum函數進行操作。使用whos函數觀察sum函數操作過程中的變數資料型別。
範例如下:
>>a=[1 2 3
4 5 6
7 8 9];
>>b=sum(a)
b=
[12 15 18]
>>whos
命令whos的結果表明矩陣a與結果向量b的資料型別都是double型
2
MATLAB預設的輸出資料型別:如果輸入變數不是single,輸出變數的資料型別是double型別。如果輸入變數的資料型別是single型別,則輸出的資料型別為single型別;
生成一個Int8(整數型)矩陣以及用sum函數進行操作。使用whos函數觀察sum函數操作的變數資料型別。
範例如下:
>>a=[1 2 3
4 5 6
7 8 9];
>>Int8(a)
>>b=sum(a)
b=
[12 15 18]
>>whos
結果觀察:輸入的a矩陣為int8型,輸出的矩陣b為double型
3
可使用型別引數‘native’,使輸入與輸出的矩陣或向量的資料型別一致。
生成一個Int8(整數型)矩陣以及用sum函數進行操作。使用whos函數觀察sum函數操作的變數資料型別。
呼叫格式:b=sum(a,type); type等於’native’時,輸入變數與輸出變數的資料型別是相同的。
範例如下:
>>a=[1 2 3
4 5 6
7 8 9];
>>Int8(a)
>>b=sum(a)
b=
[12 15 18]
>>whos
結果觀察:輸入的a矩陣為int8型,輸出的矩陣b為int8型
4
可使用型別引數‘double’,強制使輸出變數的資料為型別double。輸入變數不管是不是single型別,輸出的資料型別都是double型別。
生成一個Int8(整數型)矩陣以及用sum函數進行操作。使用whos函數觀察sum函數操作的變數資料型別。
呼叫格式:b=sum(a,type); type等於’double’時,輸出變數的輸出型別為double型。
範例如下:
>>a=[1 2 3
4 5 6
7 8 9];
>>Int8(a)
>>b=sum(a)
b=[12 15 18]
>>whos
觀察結果:輸入的a矩陣為int8型,輸出的矩陣b為double型。
1
操作物件為矩陣
C=sum(sum(a));a為一個矩陣,結果為矩陣a所有元素的求和。
範例如下:
>> a=[1 2 3
4 5 6
7 8 9];
>>sum(sum(a))
Ans=
45
2
操作物件為矩陣
C=sum(diag(a)); a為一個方陣,結果為對角線元素之和,及矩陣的跡;
>> a=[1 2 3
4 5 6
7 8 9];
>>sum(diag(a))
Ans=
15
3
操作物件為矩陣
C=sum(a(:,n)); a為一個矩陣,結果為第n列的所有元素之和,即矩陣的跡;
>> a=[1 2 3
4 5 6
7 8 9];
>>sum(a(:,2))
Ans=
15
4
操作物件為矩陣
C=sum(a(n,:)); a為一個矩陣,結果為第n行的所有元素之和,即矩陣的跡;
>> a=[1 2 3
4 5 6
7 8 9];
>>sum(a(1,:))
Ans=
6
相關文章