Matlab持续学习

来源:互联网 发布:图片剪裁软件 编辑:程序博客网 时间:2024/06/15 16:42

1.matlab中矩阵A(:)是什么意思

A(:) reshapes all elements of A into a single column vector. This has no effect if A is already a column vector.A(:) 重塑将 a 的所有元素转换为单个列向量。如果 a 已经是列向量, 则不会产生任何影响。

2.matlab乘与点乘的区别 (与. ^与.^)

1.点乘是数组的运算,不加点是矩阵的运算;2.点乘要求参与运算的两个量两必须是维数相同,是对应元素的相乘;  而不加点表示的是矩阵相乘(除的时候通过逆矩阵来实现),要求内维相同,  也就是前一个矩阵的列的维数等于后一个矩阵的行的维数。例如A,B分别为两个矩阵,则:A.*B表示的是两个矩阵的对应元素相乘,其中生成的同阶矩阵C的对应的矩阵元素为:    C(i,j)=A(i,j)*B(i,j);而如果A*B的话,则是正常的矩阵相乘,并非是对应的元素相乘。这一点相当重要。举个简单的例子例如:x=[1 1;1 1]; x.^2ans =1 11 1 x^2ans =2 22 2

3.matlab find函数详解

这个函数是为了找到矩阵或者是数组,向量中的非零元素。下面一大段英文没耐心看。看看例子就行了。第一个用法是ndices = find(X)X = [1 0 4 -3 0 0 0 8 6];indices = find(X)返回x中非零元素的序号从1开始indices =    1     3     4    8     9若x是个矩阵呢?x= [1  0 ;1  5 ;4 0 ]find(x)得到的是    1    2    3    5  是一列矢量,非零元素的序号是按一列一列的算第二个用法ind = find(X, k)ind = find(X, k, 'first')ind = find(X, k, 'last')这三个是找前K个非零元素,前两式功能一致,第三式指从最后一个元素算起。重点说一下第三个用法[row,col] = find(X, ...)[row,col,v] = find(X, ...)