- 1、本文档共80页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2 MATLAB语言基础
2.1 数据结构
?????? MATLAB语言的赋值语句有两种:
变量名 = 运算表达式
[返回变量列表] = 函数名(输入变量列表)
?????? MATLAB支持变量和常量,更重要的,MATLAB支持IEEE标准的运算符号,如pi为圆周率, i,j为虚数单位, Inf表示无穷大,NaN表示0/0、0*Inf或Inf/Inf等运算结果,称为“非数”。MATLAB变量名应该由字母引导,后面可以跟数字、字母或下划线等符号。MATLAB对变量名字母是区分大小写的。
2.1.1 矩阵
?????? MATLAB 最基本的数据结构是复数矩阵。矩阵用方括号[ ]输入,里面的各行元素由分号分隔,而同一行的不同元素由逗号或空格分隔。如果赋值表达式末尾有分号,则其结果将不显示,否则将显示出全部结果。
??????? B=[1+9i,2+8i,3+7j; 4+6j 5+5i,6+4i; 7+3i,8+2j 1i]
??????? B =???????? ? 1.0000 + 9.0000i 2.0000 + 8.0000i 3.0000 + 7.0000i???????? ? 4.0000 + 6.0000i 5.0000 + 5.0000i 6.0000 + 4.0000i?????????? 7.0000 + 3.0000i 8.0000 + 2.0000i?????????? 0 + 1.0000i
?其中,元素1+9i表示复数项。
?????? MATLAB和其他语言不同,它无需事先声明矩阵的维数。下面的语句可以建立一个更大的矩阵
B(2,5)=1B =?? 1.0000 + 9.0000i 2.0000 + 8.0000i 3.0000 + 7.0000i?? 0??????? 0?? 4.0000 + 6.0000i 5.0000 + 5.0000i 6.0000 + 4.0000i?? 0?????? 1.0000???? 7.0000 + 3.0000i 8.0000 + 2.0000i?????????? 0 + 1.0000i?? 0??????? 0
(注意: B(2,5)代表第二行五列为1;与原来的对应,前面的几个数不变,新增加的后面几行其余的全部为零。)
????? 对矩阵可以使用size()来测其大小,也可以使用reshape()函数重新按列排列。对向量来说,还可以用length()来测其长度。不论原数组A是多少维的,A(:)将返回列向量。
size(B)length(B)reshape(B,5,3) %用此函数时元素个数不可改变,而且“重新排布”是按“列”进行的。B(:)ans =3 5ans =5ans =1.0000 + 9.0000i 8.0000 + 2.0000i????????? 0 4.0000 + 6.0000i 3.0000 + 7.0000i????????? 0 7.0000 + 3.0000i 6.0000 + 4.0000i????????? 0 2.0000 + 8.0000i???????? 0 + 1.0000i? 1.0000 5.0000 + 5.0000i???????? 0????????????????????????? 0 ans =1.0000 + 9.0000i4.0000 + 6.0000i7.0000 + 3.0000i2.0000 + 8.0000i5.0000 + 5.0000i8.0000 + 2.0000i3.0000 + 7.0000i6.0000 + 4.0000i???????? 0 + 1.0000i???????? 0 ???????? 0 ???????? 0 ???????? 0 1.0000 ???????? 0
2.1.2 冒号表达式
?? ??????? 冒号表达式:s1:s2:s3
????? 冒号表达式是MATLAB里最具特色的表示方法。这一语句可以生成一个行向量,其中s1为向量的起始值,s2为步 长,而s3为向量的终止值。例如
S=0:.1:2*pi
将产生一个起始于0, 步距为0.1, 而终止于6.2的向量, 而不是终止于2*pi。如果写成S=0:-0.1:2*pi; 则不出现错误,而返回一个空向量。 s=(1:10)
s =
1 2 3 4 5 6 7 8 9 10
s(1:-1:10)
ans =
Empty matrix: 1-by-0
另外,注意下列函数表达式及输出以作对比
s(10:-1:1)
a
文档评论(0)