MatrixCalc

矩阵乘法计算器

计算两个 50×50 以内矩阵的乘积,并把每个元素展开成行与列的点积。A×B 与 B×A 分开计算,因为顺序会影响结果。

矩阵 A
: 3
: 3
矩阵 B
: 3
: 3
运算
结果
选择一个运算以在此处查看结果。错误信息也会显示在这里。

提示:可调整矩阵大小(最多 50×50)。A×B 要求 A 的列数等于 B 的行数。行列式/逆/迹/幂 需要方阵。

React, Tailwind & shadcn/ui. No external math deps. — 中文

填好 A 和 B,按 A × B。若尺寸不匹配,按钮会保持禁用并说明条件,而不是给出一个毫无意义的数。

尺寸规则

只有当 A 的列数等于 B 的行数时,乘积 A·B 才存在。m×n 乘 n×p 得到 m×p:内侧的两个数必须相等并消去,外侧的两个数保留下来。

矩阵乘法不满足交换律。A·B 与 B·A 一般是不同的矩阵,而且常常只有其中一个有定义——所以这里设了两个按钮。但结合律是成立的:(A·B)·C = A·(B·C)。

例题

每个元素都是 A 的某一行与 B 的某一列的点积:

12
34
·
56
78
=
1922
4350

左上角的元素是 1·5 + 2·7 = 19。步骤面板会把每一个这样的求和都写出来,核对手算结果因此方便得多。

常见错误

  • 逐元素相乘。那是哈达玛积,不是矩阵乘法。
  • 以为 A·B = B·A。只在特殊情形下成立,例如其中一个是单位阵。
  • 用行去乘行。永远是 A 的行乘 B 的列。
  • 由 A·B = 0 推出 A = 0 或 B = 0。两个非零矩阵完全可能相乘得到零矩阵。

常见问题

两个矩阵什么时候可以相乘?
当第一个矩阵的列数等于第二个矩阵的行数时。2×3 可以乘 3×4,结果是 2×4。
为什么 A×B 不等于 B×A?
因为结果的元素由第一个矩阵的行与第二个矩阵的列组合而成。调换顺序会改变这些组合,往往连结果的尺寸都会变。
什么是哈达玛积?
两个同尺寸矩阵逐元素相乘。它是另一种运算,在线性代数中通常并不指它。
怎么用矩阵乘向量?
列向量就是 n×1 矩阵。把 B 设成一列,A×B 就能给出你要的结果。

想看完整讲解?请读这篇教程: 矩阵乘法是怎么运算的

其他计算器