電子書籍の厳選無料作品が豊富!

mathematicaで行列の掛け算をしたいのですが、
2x2行列同時の計算は普通にできるのですが、
1x2行列と2x1行列の計算ができません。行列の大きさが変わる場合どのようにすればいいのでしょうか?

(3,5)*(45 14)^T (Tは転置行列として解釈してください。)
実行しようとしたら互いに長さが等しい同時のオブジェクトしか結合できませんとでます。

A 回答 (3件)

Mathematicaでは行列はリストのリストです.


従って
{{3, 5}} . {{45}, {14}}
とすればできます.

ちなみにベクトルの内積として計算するのならば
{3, 5} . {45, 14}
とします.

行列(リストのリスト)とベクトル(リスト)の違いに注意しましょう.

参考URL:http://reference.wolfram.com/mathematica/tutoria …
    • good
    • 0
この回答へのお礼

ありがとうございました。理解しました。

お礼日時:2011/01/17 00:42

確かMathematicaでは1x2行列(いわゆるベクトルちっくなもの)は行列として認識されません。

だから転置も作用しません。
確か、1xn行列を入力してもnx1行列を入力しても
どちらもnx1行列として認識されます。
(方法があるのかもしれませんが知りません。)

定義に戻って入力する
c[[i]]=Σa[[i,j]]b[[j]]
    • good
    • 0
この回答へのお礼

ありがとうございました。理解しました。

お礼日時:2011/01/17 00:42

で, (3, 5) と (45, 15)^T の「積」として何がお望み?

    • good
    • 0
この回答へのお礼

ありがとうございました。理解しました。

お礼日時:2011/01/17 00:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!