1.简单矩阵的建立
MATLAB以矩阵为基本运算对象,标量可看作1×1的矩阵,矢量看作n×1或1×n的矩阵.有如下几种输入方式:
(1)以直接列出元素的形式输入:把矩阵元素直接排列到方括号[]中,每行内的元素用逗号或空格分开,行与行之间用分号隔开,也可回车换行.
结果如下:
(2)通过语句和函数产生:对于已经存在的矩阵,可用函数或表达式产生新的矩阵.
例如:矩阵a和x已存在,利用y=sin(x)和c=a+0.1*(1+a/2)命令将产生新矩阵y和c.
(3)在m文件中创建矩阵:通过建立MATLAB的M文件可完成矩阵的输入,如建立B.m的文件,内容为:
则在命令窗口中使用B命令语句可以调用B矩阵.
(4)从外部的数据文件中载入:利用load或fread命令可以读取MATLAB早期版本产生的矩阵,也可读取有其他应用程序产生的数据(或矩阵).
2.矩阵元素
可以用任何形式的表达式来充当矩阵元素,如:
将得到矩阵:
可以定义或修改矩阵中某一元素,如操作:
x(5)=abs(x(1))
得一个新矩阵:
注:这里未定义的x(4)默认用0来填充.
也可以用小矩阵拼接构成大矩阵,如:
结果为:
也可使用”:”从大矩阵中抽取小矩阵,如:
d=c(1:2,:)意为抽取c矩阵一到二行的各列,结果为:
e=c(1:2,1:3)意为抽取c矩阵一到二行一到三列的元素,结果为:
3.语句与变量
MATLAB语句的常用格式:
变量=表达式(;)
或简化为:
表达式(;)
表达式可以由运算符、特殊字符、函数名、变量名等组成,表达式的结果为一矩阵,它赋给左边的变量.如省略变量名和“=”,则自动产生一个名为ans的变量,如执行1900/81,结果为:ans=23.4568,并显示在屏幕上.如语句以分号结束,则结果不显示,如执行p=a*a;,则只完成运算,但不显示结果,可在工作空间中双击变量p查看其结果.(www.xing528.com)
4.复数和复数矩阵
复数用特殊字符i或j表示.i=sqrt(-1),其值在工作空间显示为0+1.0000i.
z=a+b*i或z=r*exp(i*θ),其中r为复数的模,θ为复数辐角的弧度数.
例2 输入z=3+4i或z=3+4j,结果一样.MATLAB中复数有下面的语句生成办法:
复数矩阵的两种输入方法:
(1)a=[1 2;3 4]+i*[5 6;7 8]
(2)a=[1+5i 2+6i;3+7i 4+8i]
结果相同:a=1.0000+5.0000i 2.0000+6.0000i
3.0000+7.0000i 4.0000+8.0000i
注:(1)当复数的虚部为一个确定的数(而不是变量或矩阵)时,可省略“*”,如1+2*i可写成1+2i,但a+b*i不能写成a+bi,[1 2]+[3 4]*i不能写成[1 2]+[3 4]i.
(2)当复数作为矩阵元素时,复数内不能留有空格,如1+5 i,MATLAB中任何矩阵的元素内部都不能留有空格,否则会被当作两个元素处理而出错.
5.永久变量
系统本身在启动时定义的变量,驻留在工作空间中,它们是:
ans:系统默认的答案变量名,用于输出未经赋值的表达式的值
eps:容差变量即机器零,定义为0到最近浮点数的距离.在PC机上等于2-52,即精确到2.22×10-16
pi:圆周率的近似值3.141592653589793
Inf或inf:正无穷大,定义为(1/0)
NaN:非数(Not a number),Inf/Inf或0/0运算产生,表示不定值
i,j:虚数单位,定义i=j=(-1)1/2
6.数和算术表达式
MATLAB采用10进制惯例,表示10的幂次用符号e或E:
数值的相对精度是eps,即大约保持16位有效数字.
MATLAB的算数运算符号:
两种除法表示两种不同的除数矩阵和被除数矩阵的关系.
7.数据的显示格式(The display format of number)
MATLAB的数据显示格式由format命令来控制(见表2.2.1),它只影响结果在屏幕上的显示,不影响其计算与存储.MATLAB总是以双精度执行所有的运算.
表2.2.1 常用的数据显示格式
对于长短格式,如果矩阵的最大元素比1000大或比0.001小,则输出时将自动加入比例因子,如:
输出为:
即x=104*[1.2345 0.0000],104为比例因子.
MATLAB操作桌面的file菜单中打开preferences窗口,选择命令窗口界面,就可以方便地进行格式选择.
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。