您的位置:首页 > 编程语言 > MATLAB

matlab矩阵运算

2017-07-19 21:03 330 查看
社会实践终于结束了,我终于又有时间继续投入到学习大业之中了。今天先来谈谈MATLAB中的矩阵运算。

一、矩阵输入

矩阵的输入我也理解的不太透彻,大致形式为a=[1,2,3;4,5,6;7,8,9];其中‘,’表示前后的东西在一行,也可以被空格替换,之所以这么表达,是因为逗号或空格前后也可以是矩阵,只要行数相等即可,比如说c=[1,2,3;4,5,6;7,8,9];a=[[c;[1 2 3],[1;2;3;4]];矩阵的输入也可以为浮点数或复数(i和j表示虚数符号i)。

二、矩阵的代数运算

1、矩阵转置:a=a.’或a=a’均是转置,即行列交换,第一行变为第一列,第二行变为第二列……

2、矩阵加减法:a=b-c或a=b+c,要求维数相同或其中一方为标量,前者的结果为对应数字相加减,后者结果为将标量遍加减所有数字。

3、矩阵左除:x=a/b,其中结果x为矩阵,等价于x*a=b。

4、矩阵右除:x=a\b,其中结果x为矩阵,等价于a*x=b。

5、矩阵翻转:flipud(a),结果为上下镜面翻转的矩阵;fliplr(a),结果为左右镜面翻转的矩阵;rot90(a,k)结果为将a矩阵逆时针旋转90k度的矩阵,k可省略,k默认值为1。

6、乘方运算:没错就是^,不用多解释了吧。

7、点运算,当运算符前面加’.’时,运算为对对应元素的直接运算。

三、矩阵的逻辑运算

与&

或|

非~

异或xor()

四、矩阵比较运算

find():a=[1,2,3;4,5,6;7,8,9];[i,j]=find(a>=5)

那么i=[3,2,3,2],j=[1,2,2,3],即找出a中大于等于5的元素,并返回坐标。

all()与any():all(a>=5)与any(a>=5)分别返回一个01一维数组,前者对应每列中是否全部不为0,后者对应每列中是否存在不为0的数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: