首先要明确的是方括号创建,圆括号调用
建立矩阵可以用:直接输入法、利用函数建立矩阵和利用M文件
建立矩阵.
直接输入法:将矩阵的元素用方括号括起来,按矩阵行的顺序输入
各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之
间用分号分隔.(也可以用回车键代替分号)
例如,键入命令: A=[1 2 3;4 5 6;7 8 9]
输出结果是: A = 1 2 3
4 5 6
7 8 9
在MATLAB中,冒号是一个重要的运算符.利用它可以产生向量,
还可用来拆分矩阵.冒号表达式的一般格式是:
e1:e2:e3其中e1为初始值,e2为步长,e3为终止值.冒号表达
式可产生一个由e1开始到e3结束,以步长e2自增的行向量.
例如: i=1:0.5:10
MATLAB提供了许多数学函数,函数的自变量规定为矩阵变量,
运算法则是将函数逐项作用于矩阵的元素上,因而运算的结果是一
个与自变量同维数的矩阵.
Nd=ndims(A)
获取A数组的维度数目
S=size(A)
获取A数组各维度的规模
Snd=size(A,nd)
获取A数组第nd维度的规模
L=length(A)
获取A数组的长度(所有维度规模中的最大值)
Ne=numel(A)
给出A数组所含元素的总数
[]
操作符【例7】创建数组(行向量)a=[1 3 pi 3+5i]
a=[1 3 pi 3+5i] %or a=[1, 3, pi, 3+5i]
a= 1.0000 3.0000 3.1416 3.0000 + 5.0000i
所有的向量元素必须在操作符“[ ]”之内;
向量元素间用空格或英文的逗点“,”分开。
:
操作符【例8】创建以1~10顺序排列整数为元素的行向
量b。
b=1:10
b=1 2 3 4 5 6 7 8 9 10
【例9】键入并执行c=1:2:10和d=1:2:9
c=1:2:10
c=1 3 5 7 9d=1:2:9
d= 1 3 5 7 9
利用冒号“:”操作符创建行向量的基本语法格式:
x=Start:Increment:End
– Start表示新向量x的第一个元素;
– 新向量x的最后一个元素不能大于End ; – Increment可正可负,若负,则必须Start>End;若
正,则必须Start
函数linspace的基本语法
x= linspace(x1, x2, n)
– 该函数生成一个由 n 个元素组成的行向量;
– x1为其第一个元素;
– x2为其最后一个元素;
– x1、x2之间元素的间隔=(x2-x1)/(n-1)。 – 如果忽略参数n,则系统默认生成100个元素的行向
量。
【例10】键入并执行 x= linspace(1,2,5)
x=1.0000 1.2500 1.5000 1.7500 2.0000
[]
,使用分号分割行【例11】键入并执行x= [1; 2; 3]
X=1
23
【例12】键入并执行x= (1:3)’ % “ ’ ”表示矩阵的转置
[]
使用规则
– 数组元素必须在“[ ]”内键入;
– 行与行之间须用分号“;” 间隔,也可以在分行处用
回车键间隔;
– 行内元素用空格或逗号“,”间隔。
【例14】键入并执行a2=[1 2 3;4 5 6;7 8 9]
a2=
1 2 3
4 5 6
7 8 9
【例15】键入并执行a2=[1:3;4:6;7:9] %结果同上
数组元素的编址
全下标标识:每一维对应一个下标
【例21】一维数组元素与子数组的寻访与赋值
a=linspace(1,10,5)
a =
1.0000 3.2500 5.5000 7.7500 10.0000
a(3) %寻访a的第3个元素
ans =
5.5000
a([1 2 5])
%寻访a的第1、2、5个元素组成的子数组
ans =
1.0000 3.2500 10.0000
a(1:3) %寻访前3个元素组成的子数组
ans =
1.0000 3.2500 5.5000
a(31) %由前3个元素倒序构成的子数组
ans =
5.5000 3.2500 1.0000
a(3:end)
ans =
5.5000 7.7500 10.0000
a(3:end-1)
ans =
5.5000 7.7500
注意
设A是非奇异矩阵,则可以实现A\B和B/A的操作.
点乘、点右除、点左除
点运算表示矩阵中的对应元素进行相关的运算