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 だと結論する。0 でない行列どうしの積が零行列になることは十分ありえます。

よくある質問

二つの行列はどんなときに掛けられますか。
一つ目の列数と二つ目の行数が等しいときです。2×3 は 3×4 に掛けられ、結果は 2×4 になります。
なぜ A×B と B×A は違うのですか。
成分が一つ目の行と二つ目の列の組み合わせでできているからです。順序を入れ替えるとその組み合わせが変わり、しばしば結果のサイズまで変わります。
アダマール積とは何ですか。
同じサイズの行列どうしを成分ごとに掛ける演算です。行列の積とは別のもので、線形代数で掛け算といえば普通はこちらを指しません。
行列とベクトルはどう掛けますか。
列ベクトルは n×1 の行列です。B を 1 列に設定すれば、A×B で求める結果が得られます。

詳しい解説をお探しですか。こちらの記事へ: 行列の積の仕組み

ほかの計算機