【Matlab学习1.4】矩阵的表示

矩阵是 Matlab 中最基本的数据对象,Matlab 大部分运算或命令都是在矩阵的意义下执行的。

矩阵的建立

直接输入法

将矩阵的元素用中括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用逗号或空格分隔,不同行的元素之间用分号分隔。 

例1.4.1:

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

利用已建好的矩阵建立更大的矩阵

一个大矩阵可以由已经建立好的小矩阵拼接而成。

例1.4.2:

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

 例1.4.2

可以用实部矩阵和虚部矩阵构成复数矩阵。

例1.4.3:

>> B = [1,2,3; 4,5,6];
>> C = [6,7,8; 9,10,11];
>> A = B + i * C
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

冒号表达式

冒号表达式

可以用冒号表达式产生行向量,格式:e1:e2:e3,即#初始值:步长:终止值

注意:省略步长 e2,则步长为1。

例1.4.4:

>> t = 0:3:16
t =
     0     3     6     9    12    15
>> t = 0:5
t =
     0     1     2     3     4     5

linspace函数

也可以用 linspace 函数产生行向量,格式:linspace(a,b,n),即#第1个元素:最后元素:元素总数

注意:省略元素总数时,自动产生100个元素。 

例1.4.5:

>> x = linspace(sind(2),exp(1),7)
x =
    0.0349    0.4821    0.9294    1.3766    1.8238    2.2711    2.7183

易错提示:linspace 不要错写成 linespace!linspace 是 linear space(线性等分向量)的缩写。

结构矩阵与单元矩阵

结构矩阵

结构数据类型可以把一组数据类型不同,而逻辑上相关的数据组成一个有机的整体,其中每个数据构成了这个结构数据的一个成员。

例如:学生这个结构数据就包含了三个成员,分别是学号、姓名、性别。

由结构数据构成的矩阵就是结构矩阵,结构矩阵里的每个元素就是结构数据类型。

格式为:结构矩阵元素.成员名=表达式,就是给结构矩阵中的每个元素的每个成员分别赋值。

例1.4.6:

>> clear
>> students(1).ID = 10; students(1).name = 'liu'; students(1).grade = [11,21; 34,78];
>> students(2).ID = 12; students(2).name = 'sun'; students(2).grade = [34,191; 27,578];
>> students(3).ID = 14; students(3).name = 'cai'; students(3).grade = [13,890; 67,231]
students = 
  包含以下字段的 1×3 struct 数组:
    ID
    name
    grade
>> students.grade
ans =
    11    21
    34    78
ans =
    34   191
    27   578
ans =
    13   890
    67   231

单元矩阵

建立单元矩阵和一般矩阵相似,直接输入就可以了,只是单元矩阵元素用大括号括起来。

>> b = {10,'liu',[11,21; 34,78]; 12,'sun',[34,191; 27,578]; ...
14,'cai',[13,890;67,231]}
b =
  3×3 cell 数组
    {[10]}    {'liu'}    {2×2 double}
    {[12]}    {'sun'}    {2×2 double}
    {[14]}    {'cai'}    {2×2 double}
posted @ 2023-01-28 22:58  SplendidCrepuscule  阅读(217)  评论(0编辑  收藏  举报