前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MATLAB-矩阵相关计算(2)

MATLAB-矩阵相关计算(2)

作者头像
用户9925864
发布2022-07-27 09:15:04
6390
发布2022-07-27 09:15:04
举报
文章被收录于专栏:算法工程师的学习日志

MATLAB矩阵的加法和减法

MATLAB矩阵可以有加法和减法的操作,但是两个操作数的矩阵必须具有相同的行数和列数。

详细例子

在MATLAB中建立一个脚本文件,代码如下:

代码语言:javascript
复制
a = [ 1 2 3 ; 4 5 6; 7 8 9];
b = [ 7 5 6 ; 2 0 8; 5 7 1];
c = a + b
d = a - b

运行该文件,显示结果:

代码语言:javascript
复制
c =
     8     7     9
     6     5    14
    12    15    10
d =
    -6    -3    -3
     2     5    -2
     2     1     8

MATLAB除法(左,右)矩阵

MATLAB 中有两种矩阵除法符号:即左除“\” 和右除 “/” 。

注意:这两个操作数的矩阵必须具有相同的行数和列数。

详细例子

在MATLAB中建立一个脚本文件,代码如下:

代码语言:javascript
复制
a = [ 1 2 3 ; 4 5 6; 7 8 9];
b = [ 7 5 6 ; 2 0 8; 5 7 1];
c = a / b
d = a  b

运行该文件,显示结果:

代码语言:javascript
复制
c =

  -0.52542   0.68644   0.66102
  -0.42373   0.94068   1.01695
  -0.32203   1.19492   1.37288

d =

  -3.27778  -1.05556  -4.86111
  -0.11111   0.11111  -0.27778
   3.05556   1.27778   4.30556

MATLAB矩阵标量操作

MATLAB矩阵的标量操作就是加,减,乘或者除以一个数字矩阵。

添加到具有原始矩阵的每个元素的行和列,相减,乘或除以数相同数量的标量运算会产生一个新的矩阵。

详细例子

在MATLAB中建立一个脚本文件,代码如下:

代码语言:javascript
复制
a = [ 10 12 23 ; 14 8 6; 27 8 9];
b = 2;
c = a + b
d = a - b
代码语言:javascript
复制
e = a * b
f = a / b

运行该文件,显示结果:

代码语言:javascript
复制
c =
    12    14    25
    16    10     8
    29    10    11
d =
     8    10    21
    12     6     4
    25     6     7
e =
    20    24    46
    28    16    12
    54    16    18
f =
    5.0000    6.0000   11.5000
    7.0000    4.0000    3.0000
   13.5000    4.0000    4.5000

MATLAB矩阵的转置

MATLAB中矩阵的转置操作是用一个单引号(')表示的,该操作能够切换一个矩阵的行和列。

详细例子

在MATLAB中建立一个脚本文件,代码如下:

代码语言:javascript
复制
a = [ 10 12 23 ; 14 8 6; 27 8 9]
b = a'

运行该文件,显示以下结果:

代码语言:javascript
复制
a =
    10    12    23
    14     8     6
    27     8     9
b =
    10    14    27
    12     8     8
    23     6     9

MATLAB串联矩阵

MATLAB中使用一对中括号“[ ]”,能够将两个矩阵连接起来,创建出一个新矩阵。

MATLAB串联矩阵的两种类型:

  • 水平串联:要进行连接的两个矩阵是使用逗号 “,” 分隔开的。
  • 垂直串联:要进行连接的两个矩阵是使用分号 “;” 分隔开的。

详细例子

在MATLAB中建立一个脚本文件,代码如下:

代码语言:javascript
复制
a = [ 10 12 23 ; 14 8 6; 27 8 9]
b = [ 12 31 45 ; 8 0 -9; 45 2 11]
c = [a, b]
d = [a; b]

运行该文件,显示结果:

代码语言:javascript
复制
a =
    10    12    23
    14     8     6
    27     8     9
b =
    12    31    45
     8     0    -9
    45     2    11
c =
    10    12    23    12    31    45
    14     8     6     8     0    -9
    27     8     9    45     2    11
d =
    10    12    23
    14     8     6
    27     8     9
    12    31    45
     8     0    -9
    45     2    11

MATLAB矩阵乘法

MATLAB中如果有两个矩阵 A 和 B ,其中 A 是 m*n 矩阵,B 是 n*p 矩阵,那么他们相乘能够产生一个 m*n 的矩阵 C。

MATLAB矩阵乘法只发生在矩阵 A 的列数的数量等于矩阵 B 的行数的矩阵乘法中,具有相应的列中的第二矩阵乘以第一矩阵中的行的元素。

比如,第(i,j)个位置中的每个元素,在所得的矩阵 C 中,是在第 i 行的第一矩阵具有第二矩阵的第 j 列中的相应元素的产品的元素的总和。

在 MATLAB 中,矩阵乘法使用*运算符。

详细例子

在MATLAB中建立一个脚本文件,代码如下:

代码语言:javascript
复制
a = [ 1 2 3; 2 3 4; 1 2 5]
b = [ 2 1 3 ; 5 0 -2; 2 3 -1]
prod = a * b

运行该文件,显示以下结果:

代码语言:javascript
复制
a = 1     2     3    
    2     3     4
    1     2     5
b = 2     1     3
    5     0    -2
    2     3    -1
prod = 18    10    -4
       27    14    -4
       22    16    -6

MATLAB矩阵的行列式

MATLAB要计算对应矩阵行列式的值的指令为:d=det(A),该指令返回矩阵 A 的行列式,并把所得值赋给 d。若 A 仅包含整数项,则该结果 d 也是一个整数。

详细例子

在MATLAB中建立一个脚本文件,代码如下:

代码语言:javascript
复制
a = [ 1 2 3; 2 3 4; 1 2 5]
det(a)

运行该文件,显示以下结果:

代码语言:javascript
复制
a =
     1     2     3
     2     3     4
     1     2     5
ans =
    -2

MATLAB逆矩阵

MATLAB中矩阵A的逆矩阵被记为 A−1 ,下面的关系成立:

代码语言:javascript
复制
AA−1 = A−1A = 1

MATLAB中不是每个矩阵都有逆矩阵的,比如一个矩阵的行列式是零的话,则矩阵的逆就不存在,这样的矩阵是奇异的。

MATLAB中,逆矩阵的计算使用 inv 函数:逆矩阵A是inv(A).

详细例子

在MATLAB中建立一个脚本文件,并输入下面的代码:

代码语言:javascript
复制
a = [ 1 2 3; 2 3 4; 1 2 5]
inv(a)

运行该文件,显示以下结果:

代码语言:javascript
复制
a =
     1     2     3
     2     3     4
     1     2     5
ans =
   -3.5000    2.0000    0.5000
    3.0000   -1.0000   -1.0000
   -0.5000         0    0.5000
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法工程师的学习日志 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • MATLAB矩阵的加法和减法
    • 详细例子
    • MATLAB除法(左,右)矩阵
      • 详细例子
      • MATLAB矩阵标量操作
        • 详细例子
        • MATLAB矩阵的转置
          • 详细例子
          • MATLAB串联矩阵
            • 详细例子
            • MATLAB矩阵乘法
              • 详细例子
              • MATLAB矩阵的行列式
                • 详细例子
                • MATLAB逆矩阵
                  • 详细例子
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档