矩阵表示
矩阵:MATLAB中最基本的数据对象
向量是矩阵的特殊类型
1. 矩阵的建立
1)直接输入法
矩阵元素用中括号括起,按矩阵行的顺序输入各元素,同一行的各元素之间用逗号或空格分隔,不同行的元素之间用分号分隔。
>> A=[1,2,3;4,5,6;7,8,9]
A =
1 2 3
4 5 6
7 8 9
2)利用已建好的矩阵建立更大的矩阵
一个大矩阵可以由已经建立好的小矩阵拼接而成
3)利用实部矩阵和虚部矩阵构成复数矩阵
>> B=[1,2,3;4,5,6];
>> C=[6,7,8;9,10,11];
>> A=B+i*C
%i与一个矩阵相乘,乘以矩阵的各个元素
A =
1.0000 + 6.0000i 2.0000 + 7.0000i 3.0000 + 8.0000i
4.0000 + 9.0000i 5.0000 +10.0000i 6.0000 +11.0000i
%B中各元素是A中对应各元素的实部,C中各元素是A中对应各元素的虚部
2. 产生行向量
1)冒号表达式
格式:e1:e2:e3
e1表示初始值,e2表示步长,e3表示终止值
省略步长e2,则步长默认为1
>> t=0:1:5
t =
0 1 2 3 4 5
%产生[0,5]区间内,步长为1的数
2)linspace( )函数
格式:linspace(a,b,n)
等价于a:(b-a)/(n-1):b
a:第一个元素,b:最后一个元素,n:元素总数
当n省略时,自动产生100个元素
>> x=linspace(0,pi,6)
x =
0 0.6283 1.2566 1.8850 2.5133 3.1416
%产生[0,pi]区间内6个数,6个数之间是等间距的。
%区分:冒号表达式指定生成数的取值范围和步长,不直接指定数字个数;linspace( )函数指定生成树的取值范围和个数,不直接指定步长。
>> a=linspace(1,10,11)
%等价于
>> a=1:0.9:10
3. 结构矩阵和单元矩阵
1)结构矩阵
- 结构数据构成的矩阵为结构矩阵,结构矩阵里的每个元素即结构数据类型。
- 结构数据类型包含不同类型数据。
格式:结构矩阵元素.成员名=表达式
>> a(1).x1=10;a(1).x2='Liu';a(1).x3=[11,21;34,78];
>> a(2).x1=12;a(2).x2='Wang';a(2).x3=[34,191;27,578];
>> a(3).x1=14;a(3).x2='Cai';a(3).x3=[13,890;67,231];
%创建结构矩阵a,包含3个元素,各元素下包含3个成员
2)单元矩阵
- 单元数据类型也包含不同类型数据,单元矩阵的元素即为各类型数据,其下不再有成员。
- 建立单元矩阵与一般矩阵相似,只是单元矩阵元素用花括号括起。
>> b={10,'liu',[11,21;34,78];12,'wang',[34,191;27,578];...}
14,'cai',[13,890;67,231]}
b =
3×3 cell 数组
{[10]} {'liu' } {2×2 double}
{[12]} {'wang'} {2×2 double}
{[14]} {'cai' } {2×2 double}
%创建一个三行三列的单元矩阵b,b中元素可包含不同类型数据