2009年3月28日星期六

(54)MatLab 基础

----以Matlab 7 为例----

1. Matlab中,变量名以字母打头,不能是数字和下划线(这与一些高级语言不同);且区分大小写;
2. Matlab中有一些保留字,尽管可以对其赋新值,但尽量不要使用,以避出现错乱,如:
2.1 eps: 浮点运算误差限,在PC中为2.2204e-016;就是说,如果设置a=eps-1,则a=-1;
2.2 i, j :这两个量均为0 + 1.0000i,如果在程序中被修改,所以在使用前一般需要恢复:i=sqrt(-1);
2.3 Inf:这个很特殊,和inf是同一个意思,表示无穷大,如果要表示无穷小,则是-inf;
2.4 NaN: 不定式(Not a Number),如0/0=NaN, inf/inf=NaN,很奇特的一个量,NaN*inf=NaN;
2.5 pi:这个不用说,就是那个圆周率的东西;
2.6 lasterr: 存放最新一次的错误信息,字符串型,如果本次执行过程中没有发生过错误,则其值为空字符串;
2.7 lastwarn: 存放最新一次警告信息,类似上一个;

例如:
>> 4/0Warning: Divide by zero.
ans =
Inf
>> lastwarn
ans =
Divide by zero.

3. 数据类型
3.1 数值型:
3.2 符号型:
3.3 字符串:
3.4 多维数组:
3.5 单元数组:
3.6 类与对象:

4. 语法结构
4.1 直接赋值:赋值变量=赋值表达式,如

>> A=[1 2 3;4 5 6;7,8,9]
A =
1 2 3

4 5 6

7 8 9


4.2 函数调用:[返回变量列表]=函数名(输入变量列表),这些函数可以是Matlab内建函数,也可以是用户自定义的函数。

5. 冒号表达式
这是Matlab中最重要的表达多这一,在生成向量、子矩阵提取等方面功能卓越。
如v=s1:s2:s3 ,生成一个行向量,s1为起始值,s2为步长,s3为最大值。如:

>> v=1:1:8
v =

1 2 3 4 5 6 7 8

又如:

>> v1=0:0.2:pi
v1 =
Columns 1 through 11
0 0.2000 0.4000 0.6000 0.8000 1.0000 1.2000 1.4000 1.6000 1.8000 2.0000
Columns 12 through 16
2.2000 2.4000 2.6000 2.8000 3.0000
>> v2=0:pi
v2 =
0 1 2 3


注:我们注意到,0-pi时,最大值是3而不是3.141.........,如果只输入两个:,则按默认步长为1输出;

B=A(v1,v2)用于提取子矩阵!



更多资料,建议去Baisi论坛下载,非常全面,这里就不再引用了,地址是:http://www.baisi.net/thread-57854-1-1.html

没有评论:

发表评论

欢迎就文章所述观点、问题发表看法和留言。
请勿发表任何有关政治、宗教、成人等敏感性评论,勿发表带有人身攻击性、骂人、脏话等,博主有权删除任何评论,见谅!谢谢!