matlab中函数中点乘,Matlab中size、点乘和乘、max函数整理

简单,易懂

Matlab中的size函数

size(A)函数是用来求矩阵的大小。

比如说一个A是一个3×4的二维矩阵: 1、size(A) %直接显示出A大小 ans=

3 4

2、s=size(A)%返回一个行向量s,s的第一个元素是矩阵的行数,第二个元素是矩阵的列数 s=

3 4

3、[r,c]=size(A)%将矩阵A的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量c r= 3 c= 4

4、[r,c,m]=size(A) r= 3 c= 4 m= 1

也就说它把二维矩阵当作第三维为1的三维矩阵,这也如同我们把n维列向量当作n×1的矩阵一样

5、当a是一个n维行向量时,size(A)把其当成一个1×n的矩阵,因此size(a)的结果是 ans=

1 n

而不是a的元素个数n(这里应当注意)。 6、size(A,n)

如果在size函数的输入参数中再添加一项n,并用1或2为n赋值,则 size将返回矩阵的行数或列数。其中r=size(A,1)该语句返回的是矩阵A的行数, c=size(A,2) 该语句返回的是矩阵A的列数

Matlab中的点乘和乘

(1)点乘表示两个矩阵对应位置元素相乘,所以这两个矩阵应该是尺寸等大的。 例如:

>> a = [1 2 3;2 3 4]; >> b = [1 2 3;2 3 4]; >> a.*b ans =

1 4 9 4 9 16 >> c = [1 2 3;1 2 3;1 2 3]; >> a.*c

??? Error using ==> times

Matrix dimensions must agree.

这里a无法点乘c,因为这两个不是相同尺寸的矩阵。

(2)而乘 * ,这个和我们在数学中学到的矩阵相乘是一个意义。例如: >> a*c ans =

6 12 18 9 18 27 >> a*b

??? Error using ==> mtimes

Inner matrix dimensions must agree.

由于a的列不等于b的行,所以两者不可相乘。

Matlab中的Max函数

(1)对于一个数组A(向量)来说,max(A)是求数组中的最大值;

(2)对于一个矩阵A来说,max(A)是求矩阵中每一列的最大值,提出这些值,组成一个行向量;

(3)而[X,k]=max(A),X为矩阵中每一列最大值组成的行向量;而k则表示这些元素在每一列中的行数。

你可能感兴趣的:(matlab中函数中点乘)