内容简介:还有一个月就美赛了,本系列文章适用于完全没有任何 matlab 基础,但是有别的编程语言基础的人看,我会结合自己的理解,有的放矢的讲,不会掺杂很多废话,各位读者轻喷~Matlab 运算符分五类:其主要功能是进行各种数学运算,按其优先级别依次为:
写在前面
还有一个月就美赛了,本系列文章适用于完全没有任何 matlab 基础,但是有别的编程语言基础的人看,我会结合自己的理解,有的放矢的讲,不会掺杂很多废话,各位读者轻喷~
matlab 运算符
Matlab 运算符分五类: 数学、关系,逻辑、位、集合运算符
数学运算符
其主要功能是进行各种数学运算,按其优先级别依次为:
- 转置
.’
、共轭转置'
、幂次.^
、矩阵幂次^
- 正、负号
+
、-
- 乘法
.*
、矩阵乘法*
、元素左右除.\
、./
、矩阵左右除\
、/
- 加减法
+
、-
- 冒号
:
在同一优先级中,运算自左至右完成,对运算顺序不确定时, 最好以“()”实现强制运算顺序
对于矩阵, 右除 A/B,相当于 X*B=A 的解矩阵 , 左除 AB,相当于 A*X=B 的解矩阵
关系运算符
有六种关系运算符: ==
, ~=
, >
, >=
, <
, <=
。关系运算符总是以 矩阵内元素对元素做运算 ,若满足关系,则返回 1,不满足则返回 0
逻辑运算符
有三种: &
(与), |
(或), ~
(非)
相关命令还有: all()
, any()
。当 所有 向量元素为 “真”,all 返回 1,而当 任意元素 为 “真”,any 即返回 1
示例:
位运算符
对非负整数进行位对位的逻辑运算,主要函数如下:
bitand() bitor() bitxor() bitset() bitget() bitcmp() bitshift()
集合运算符
仅限于 向量运算 ,此时 matlab 将向量视为集合来进行各种集合运算,常用命令如下:
Union() intersect() setdiff() setxor() unique() ismember()
数值精度
format short format long format long e format short e format bank format + format rational format hex format long g format short g
常用Keyword
clc clear x who Whos
矩阵
矩阵输入
行矩阵(Row vector) a = [1 2 3 4]
列矩阵(Column vector): b = [1;2;3;4]
索引向量(矩阵)
$$
A =
\left[
\begin{matrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{matrix}
\right]
$$
A(8) = 9
,编号是按照一列一列数下来
A([1 3 5]) = 1 31 17
A(3,2) = 2
,以逗号隔开的两个数字,前面表示行,后面表示列
替换矩阵值
A(x) = b
,等号左边是索引,首先索引到需要替换的位置,然后用右边的值去赋值(替换)
如果想要删掉某一行,格式: A(x,:) = []
如果想要删掉某一列,格式: A(:,x) = []
:
操作
如果要创建一个非常长的矩阵,例如从 1 到 1000,手动输入非常麻烦,这时就可以利用 :
操作符
格式: A = [first:tolerance:end]
,从 first 开始,end 为结束,tolerance为公差创造一个等差向量(tolerance 默认值为 1)
:
操作符还有另一种用法,如果想取矩阵的某一行或者某一列,只需要 A(x,:)
或者 A(:,x)
矩阵合并操作
格式: F = [A B]
或 F = [A;B]
(这两种做法产生的结果是不一样的)
特殊矩阵
eye(n) zeros(n1,n2) ones(n1,n2) diag([x1 x2 x3]) linspace(a,b,n) rand(m,n)
以上所述就是小编给大家介绍的《matlab—基本操作与矩阵输入》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。