Matlab学习(四)

矩阵

矩阵是两维数字数组,要在 MATLAB 创建矩阵,输入的行各元素之间用空格或逗号分隔,行末使用分号标记。

>> A = [-1,6; 7, 11]
A =
    -1 6
    7 11
>> B = [2,0,1;-1,7,4; 3,0,1]
B =
    2 0 1
    -1 7 4
    3 0 1

转置

>> A = [-1 2 0; 6 4 1]
A =
    -1 2 0
    6 4 1
>> B = A'
B =
    -1 6
    2 4
    0 1

% 如果矩阵包含有复数元素,那么转置操作会自动计算复数的共轭值:

>> C = [1+i, 4-i; 5+2*i, 3-3*i]
C =
    1.0000 + 1.0000i 4.0000 - 1.0000i
    5.0000 + 2.0000i 3.0000 - 3.0000i
>> D = C'
D =
    1.0000 - 1.0000i 5.0000 - 2.0000i
    4.0000 + 1.0000i 3.0000 + 3.0000i

% 如果要转置复数矩阵的而不计算它的共轭值,那么我们使用(.')

>> D = C.'
D =
    1.0000 + 1.0000i 5.0000 + 2.0000i
    4.0000 - 1.0000i 3.0000 - 3.0000i

乘法

与数组类似,矩阵的乘法同样分为两种:

>> A = [12 3; -1 6]; B = [4 2; 9 1];
>> C = A .* B
C =
    48 6
    -9 6

>> A = [2 1; 1 2]; B = [3 4; 5 6];
>>> A * B
ans =
    11 14
    13 16

>> A = [1 4; 8 0; -1 3]; B = [-1 7 4; 2 1 -2];
>> C = A*B
C =
    7 11 -4
    -8 56 32
    7 -4 -10

特殊矩阵

单元矩阵是一个对角线为非零元素其它元素为零的方形矩阵。要创建 n×n 的单元矩阵,输入下面的 MATLAB 命令:

>> eye(4)
ans =
    1 0 0 0
    0 1 0 0
    0 0 1 0
    0 0 0 1

下面是创建全0或者全1的矩阵操作:

>> zeros(3)

ans =

     0     0     0
     0     0     0
     0     0     0

>> zeros(2,3)

ans =

     0     0     0
     0     0     0

>> ones(3)

ans =

     1     1     1
     1     1     1
     1     1     1

>> ones(2,3)

ans =

     1     1     1
     1     1     1

矩阵引用

在 MATLAB 中,矩阵的单个元素或整列都能够被引用。考虑下面的矩阵:

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

% 单元素选择

>> A(2,3)
ans =
    6

% 列元素选择

>> A(:,2)
ans =
    2
    5
    8

% 行元素选择

>> A(2,:)
ans=
    4 5 6

>> A(:,2:3)
ans =
    2 3
    5 6
    8 9

>> E = A([1,1,1,1],:)
E =
    1 2 3
    1 2 3
    1 2 3
    1 2 3
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章