Matlab studying~ 运算
2017-04-19 15:27
127 查看
1.基本运算
matlab中的运算实在矩阵意义下进行的,单个数据的运算只是一种特例,例如,矩阵的加减法,必须满足矩阵加减法的条件:矩阵的维数必须相同,矩阵也可以与标量进行加减法,此时即为矩阵中的每个元素都分别与标量进行加减运算。矩阵的乘法 * 也必须保证维数相同。除法则是有两种 左除(\)与右除(/) A\B表示A的逆左乘B,同样,A/B表示A矩阵的逆右乘矩阵B2.点运算
这一点我觉得还是很重要的,也就是在运算符前面加 . ,例如:.* , ./ ,.^等等,例如:A.*B 与A *B,这两点是不一样的:>> A=[1,2,3;2,3,4;3,4,5]; >> B=[3,2,1;4,3,2;5,4,3]; >> A*B ans = 26 20 14 38 29 20 50 38 26 >> A.*B ans = 3 4 3 8 9 8 15 16 15也就是说,带有.的运算,是将矩阵中的对应元素进行运算,而不带.的运算则是完全按照矩阵进行的,在进行函数的运算中是较容易弄混的,例如:
x=1,2,3,4,5的时候,求解 y= sin x cos x的值:
>> x=1:1:5; >> y=sin(x)*cos(x) 错误使用 * 内部矩阵维度必须一致。 >> y=sin(x).*cos(x) y = 0.4546 -0.3784 -0.1397 0.4947 -0.2720可以看到,仅用 * 时,运算是不会进行的,因为sin与cos的运算结果为5个元素的以为矩阵,连个矩阵之间无法进行运算。
3.关系运算
matlab中关系运算主要有 :< (小于) <=(小于等于) >(大于) >=(大于等于) ==(等于) ~=(不等于),6种关系运算分别对应6种函数:lt,le,gt,ge,eq,ne;当两个比较量为标量时,直接比较两个的大小,如果关系成立,表达式结果为1 反之为0:
>> 2>1 ans = 1 >> 1<=2 ans = 1 >> ne(1,1) ans = 0如果是两个矩阵进行比较,则是相对应位置的元素分别进行比较,返回的结果是一个与原来矩阵维数相同的矩阵,元素由0和1组成
4.逻辑运算
逻辑运算有 &(与),|(或),~(非),对应的函数为and(a,b),or(a,b),not(a),xor(a,b)(异或运算)如果运算双方为同维的矩阵,则对应位置的元素进行逻辑运算,如果其中一个是标量,则是该标量分别与矩阵中的每个元素进行逻辑运算
这里提一下find函数,find函数是用来找矩阵中的非零元素的,例如:
>> A=[1,2,3,0;2,0,0,0;3,4,0,0] A = 1 2 3 0 2 0 0 0 3 4 0 0 >> k=find(A) k = 1 2 3 4 6 7 >> A(k) ans = 1 2 3 2 4 3
相关文章推荐
- 2.matlab实现矩阵的基本运算
- MATLAB浮点型运算生成6变形
- matlab基本语法和运算基础
- Matlab 矩阵运算
- 语音信号处理过零率的matlab优化运算
- 一分钟了解"matlab小数取整运算"
- Matlab 矩阵运算
- MATLAB符号运算--求导diff
- matlab控制运算精度函数digits(A)和vpa(B)的使用方法
- matlab的算术运算
- matlab符号运算
- [Matlab]基础教程学习笔记(七):符号运算
- 【MATLAB】关系运算与逻辑运算
- 关于MATLAB入门的简单记录10 Matlab的数值运算
- matlab中卷积运算conv2的三种形式
- matlab矩阵及其基本运算—特征值分解和奇异值分解
- Matlab符号运算
- matlab中的点运算
- Matlab图像的代数运算(图像的乘法)
- MATLAB基本运算