- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 MATLAB数据及运算
2.1 变量及其操作
一、变量命名规则
1.变量名、函数名对字母大小写是敏感的
myfile与MyFile表示不同的变量
sin是MATLAB定义的正弦函数名,但SIN、Sin都不是
2.变量名的第一个字符必须是英文字母
3.变量名最多可包含63个字符(英文、数字和下划线)
4.变量名中不能包含空格、标点
my_exemple12是合法的变量名,12exemple、_exemple12、my exemple12、my.exemple12是非法变量名
二、MATLAB默认的预定义变量
每当MATLAB启动时,不经定义和赋值就会产生一些变量,称为MATLAB默认的预定义变量
这些变量都可以重新赋值。但最好不要对这些变量名重新赋值
预定义变量
含义
预定义变量
含义
ans
计算结果的缺省变量名
nargin
函数输入参数个数
eps
机器零阈值(机器的浮点运算误差限)
narout
函数输出参数个数
Inf或inf
无穷大,如1/0
realmax
最大正浮点数
i或j
虚数单位
realmin
最小正浮点数
pi
圆周率?
lasterr
存放最新的错误信息
NaN或nan
不是一个数(Not a Number),如0/0,∞/∞
lastwarn
存放最新的警告信息
例1 用键盘在MATLAB指令窗中输入以下内容
eps
eps —— 机器的浮点运算误差限。PC机上eps的默认值为 2.2204×10-16 ,若某个量的绝对值小于eps,则可以认为这个量为0。
例2 用键盘在MATLAB指令窗中输入以下内容
1/0,1.e1000,log(0)
Inf —— 无穷大量 + ∞ 的MATLAB表示,也可以写成inf 。同样地,- ∞ 可以表示为 - Inf 。在 MATLAB 程序执行时,即使遇到了以 0 为除数的运算,也不会终止程序的运行,而只给出一个“除0”警告,并将结果赋成Inf ,这样的定义方式符合 IEEE 的标准。从数值运算编程角度看,这样的实现形式明显优于C语言。
例3 用键盘在MATLAB指令窗中输入以下内容
0/0,inf/inf,inf*0
注意
在MATLAB中,即使遇到以0为除数的运算,程序也不会终止运行。这时只给出一个警告,并将结果赋给inf或NaN
NaN —— 不定式( not a number ) ,通常由 0 / 0 运算、Inf / Inf 及其他可能的运算得出。 NaN 是一个很奇特的量,如 NaN 与Inf 的乘积仍为 NaN 。
例4 用键盘在MATLAB指令窗中输入以下内容
n= realmax,n= 1.7977e+309
例5 用键盘在MATLAB指令窗中输入以下内容
m= realmin,m=2.2251e-309
i 和 j —— 若i或j量不被改写,则它们表示纯虚数量j 。但在 MATLAB 程序编写过程中经常事先改写这两个变量的值,比如在循环过程中常用这两个变量来表示循环变量。如果想恢复该变量,则可以用语句 i = sqrt(-1)设置,即对 -1 求平方根。
三、MATLAB运算符和表达式
运算符
操作
数学表达式
MATLAB运算符
MATLAB表达式
加
a+b
+
a+b
减
a-b
-
a-b
乘
a?b
*
a*b
除
a?b
/或\
a/b或b\a
幂
ab
^
a^b
注意
所有运算都定义在复数域上
例1 用键盘在MATLAB指令窗中输入以下内容
u=sqrt(-4)
注意
对于方根,运算只给出处于第1象限的解
例2 用左除(\)和右除(/)计算表达式的值
用键盘在MATLAB指令窗中输入以下内容
(5+cos(47*pi/180))/(1+sqrt(7)-2*i)、(1+sqrt(7)-2*i) \(5+cos(180 \47*pi))
注意
对于标量,左除(\)或右除(/)所得到的结果是一样的
对于矩阵,左除(\)和右除(/)所得到的结果是不一样的
AX=B → A-1AX= A-1B → X=A-1B=A\B,
XA=B → XA A-1=B A-1 →X= BA-1= B/A
表达式
表达式由变量名、运算符、函数名组成
表达式按优先级和自左向右的顺序运算
优先级从高向低的排序是:指数运算、乘除运算、加减运算
括号可以改变运算的顺序
赋值符“=”和运算符的两侧允许有空格
复数和复数矩阵
MATLAB把复数看成一个整体来处理(不像其它程序,把实部和虚部分开处理)
虚数单位用预定义变量i或j表示
复数z=a+bi=rei?直角坐标表示与极坐标表示之间的转换
real(z):给出复数z的实部a=rcos?
imag(z):给出复数z的虚部b=rsin?
abs(z):给出复数z的模r=sqrt(a2+b
文档评论(0)