没有合适的资源?快使用搜索试试~ 我知道了~
MATLAB+中的常用操作符.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 65 浏览量
2021-09-14
16:09:22
上传
评论
收藏 222KB DOCX 举报
温馨提示
试读
32页
。。。
资源推荐
资源详情
资源评论
MATLAB
中的常用操作符
其实这些是MATLAB 帮助文件中的内容,可以利用help 命令知道的。
Arithmetic operators.
Backslash or left matrix divide \
Slash or right matrix divide /
Left array divide .\
Right array divide ./
Kronecker tensor product kron
Relational operators.
Equal ==
Logical EXCLUSIVE OR
True if any element of vector is nonzero
True if all elements of vector are nonzero
Special characters.
Colon :
ctranspose Complex conjugate transpose '
horzcat
vertcat
subsasgn
subsref
subsindex
Horizontal concatenation [,]
Vertical concatenation [;]
Subscripted assignment ( ),{ },.
Subscripted reference ( ),{ },.
Subscript index
Set operators.
Set union.
unique
intersect
setdiff
setxor
ismember
Set intersection.
Set difference.
Set exclusive or.
True for set member
MATLAB 程式设计与应用
1-1、基本运算与函数
在MATLAB 下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter
键即可。例如:
>>(5*2+1.3-0.8)*10/25
ans =
4.2000
MATLAB 会将运算结果直接存入一变数ans,代表MATLAB 运算後的答案 (Answer),并
显示其数值於萤幕上。(为简便起见,在下述各例中,我 们不再印出MATLAB 的提示号。)
===============================================
小提示:
">>"是MATLAB 的提示符号(Prompt),但在PC 中文视窗系统下,由於编码方式不同,
此提示符号常会消失不见,但这并不会影响到MATLAB 的运算结果。
===============================================
我们也可将上述运算式的结果设定给另一个变数x:
x = (5*2+1.3-0.8)*10^2/25
x =
42
此时MATLAB 会直接显示x 的值。由上例可知,MATLAB 认识所有一般常用到的
加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算 (^)。
小提示:
MATLAB 将所有变数均存成double 的形式,所以不需经过变数宣告(Variable declaration)。
MATLAB 同时也会自动进行记忆体的使用和回收,而不必像C 语言,必须由使用者一一指
定。这些功能使的MATLAB 易学易用,使用者可专心致力於撰写程式,而不必被软体枝节
问题所干扰。 若不想让MATLAB 每次都显示运算结果,只需在运算式最後加上分号(;)
即可,如下例:
y = sin(10)*exp(-0.3*4^2);
若要显示变数y 的值,直接键入y 即可:
>>y
y =
-0.0045
在上例中,sin 是正弦函数,exp 是指数函数,这些都是MATLAB 常用到的数
学函数。下表即为MATLAB 常用的基本数学函数及三角函数:
===============================================
小整理:MATLAB 常用的基本数学函数
abs(x):纯量的绝对值或向量的长度
angle(z):复数z 的相角(Phase angle)
sqrt(x):开平方
real(z):复数z 的实部
imag(z):复数z 的虚部
conj(z):复数z 的共轭复数
round(x):四舍五入至最近整数
fix(x):无论正负,舍去小数至最近整数
floor(x):地板函数,即舍去正小数至最近整数
ceil(x):天花板函数,即加入正小数至最近整数
rat(x):将实数x 化为分数表示
rats(x):将实数x 化为多项分数展开
sign(x):符号函数 (Signum function)。
当x<0 时,sign(x)=-1;
当x=0 时,sign(x)=0;
当x>0 时,sign(x)=1。
rem(x,y):求x 除以y 的馀数
gcd(x,y):整数x 和y 的最大公因数
lcm(x,y):整数x 和y 的最小公倍数
exp(x):自然指数
pow2(x):2 的指数
log(x):以e 为底的对数,即自然对数或
log2(x):以2 为底的对数
log10(x):以10 为底的对数
===============================================
小整理:MATLAB 常用的三角函数
sin(x):正弦函数
cos(x):馀弦函数
tan(x):正切函数
asin(x):反正弦函数
acos(x):反馀弦函数
atan(x):反正切函数
atan2(x,y):四象限的反正切函数
sinh(x):超越正弦函数
cosh(x):超越馀弦函数
tanh(x):超越正切函数
asinh(x):反超越正弦函数
acosh(x):反超越馀弦函数
atanh(x):反超越正切函数
===============================================
变数也可用来存放向量或矩阵,并进行各种运算,如下例的列向量(Row vector)运算:
x = [1 3 5 2];
y = 2*x+1
y =
3 7 11 5
===============================================
小提示:变数命名的规则
1.第一个字母必须是英文字母
2.字母间不可留空格
3.最多只能有19 个字母,MATLAB 会忽略多馀字母
===============================================
我们可以随意更改、增加或删除向量的元素:
y(3) = 2 % 更改第三个元素
y =
3 7 2 5
y(6) = 10 % 加入第六个元素
y =
3 7 2 5 0 10
y(4) = [] % 删除第四个元素,
y =
3 7 2 0 10
在上例中,MATLAB 会忽略所有在百分比符号(%)之後的文字,因此百分比之後的文字
均可视为程式的注解(Comments)。MATLAB 亦可取出向量的一个元素或一部份来做运算:
x(2)*3+y(4) % 取出x 的第二个元素和y 的第四个元素来做运算
ans =
9
y(2:4)-1 % 取出y 的第二至第四个元素来做运算
ans =
6 1 -1
在上例中,2:4 代表一个由2、3、4 组成的向量,同样的方法可用於产生公
差为1 的等差数列:
x = 7:16
x =
7 8 9 10 11 12 13 14 15 16
若不希望公差为1,则可将所需公差直接至於4 与13 之间:
x = 7:3:16 % 公差为3 的等差数列
x =
7 10 13 16
事实上,我们可利用linspace 来产生任意的等差数列:
x = linspace(4, 10, 6) % 等差数列:首项为4,末项为10,项数为6
x =
4.0000 5.2000 6.4000 7.6000 8.8000 10.0000
若对MATLAB 函数用法有疑问,可随时使用help 来寻求线上支援(on-line
help):
help linspace
LINSPACE Linearly spaced vector.
LINSPACE(x1, x2) generates a row vector of 100 linearly
equally spaced points between x1 and x2.
LINSPACE(x1, x2, N) generates N points between x1 and x2.
equally spaced points between x1 and x2.
LINSPACE(x1, x2, N) generates N points between x1 and x2.
See also LOGSPACE, :.
====================================================
小整理:MATLAB 的查询命令
help:用来查询已知命令的用法。例如已知inv 是用来计算反矩阵,键入 help inv 即可得知
有关inv 命令的用法。(键入help help 则显示help 的用法,请试看看!)
lookfor:用来寻找未知的命令。例如要寻找计算反矩阵的命令,可键入lookfor inverse,
MATLAB 即会列出所有和关键字inverse 相关的指令。找到所需的命令後,即可用help 进一
步找出其用法。(lookfor 事实上是对所有在搜寻路径下的M 档案进行关键字对第一注解行
的比对,详见後叙。)
======================================================
Matlab 入门教程--基本运算与函数(二)
将列向量转置(Transpose)後,即可得到行向量(Column vector):
z = x'
z =
4.0000
5.2000
6.4000
7.6000
8.8000
10.0000
不论是行向量或列向量,我们均可用相同的函数找出其元素个数、最大
值、最小值等:
length(z) % z 的元素个数
ans =
6
max(z) % z 的最大值
ans =
10
min(z) % z 的最小值
ans =
4
===============================================
小整理:适用於向量的常用函数有:
min(x): 向量x 的元素的最小值
max(x): 向量x 的元素的最大值
mean(x): 向量x 的元素的平均值
median(x): 向量x 的元素的中位数
std(x): 向量x 的元素的标准差
diff(x): 向量x 的相邻元素的差
sort(x): 对向量x 的元素进行排序(Sorting)
length(x): 向量x 的元素个数
norm(x): 向量x 的欧氏(Euclidean)长度
sum(x): 向量x 的_________
元素总和
prod(x): 向量x 的元素总乘积
cumsum(x): 向量x 的累计元素总和
cumprod(x): 向量x 的累计元素总乘积
dot(x, y): 向量x 和y 的内积
cross(x, y): 向量x 和y 的外积
(大部份的向量函数也可适用於矩阵,详见下述。)
若要输入矩阵,则必须在每一列结尾加上分号(;),如下例:
A = [1 2 3 4; 5 6 7 8; 9 10 11 12];
A
剩余31页未读,继续阅读
资源评论
苦茶子12138
- 粉丝: 1w+
- 资源: 6万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功