!! MAXIMA を使って、行列の計算をする ! 行列をつくる 行列に名前をつける. さて、matrix だけを使っても色々な行列の計算を maxima にさせることは可 能なのですが、計算のたびに一々成分を入力するのでは全く疲れてしまいます。そこで、一度入力した行列 に適当な名前を付けて、名前で色々な操作ができれば便利です。maxima で、何かの対象に名前を付ける は記号 : を使います。例を見てみましょう。 (%i3) A : matrix([1,2,3],[4,5,6],[7,8,9]); [ 1 2 3 ] [ ] (%o3) [ 4 5 6 ] [ ] [ 7 8 9 ] (%i4) B : matrix([a,b,c,d],[e,f,g,h]); [ a b c d ] (%o4) [ ] [ e f g h ] これで、A, B といった名前で行列を使うことができるようになりました。この A や B を変数と言います。 !足し算 (%i3) A : matrix([1,2],[3,4]); [ 1 2 ] (%o3) [ ] [ 3 4 ] (%i4) B : matrix([a,b],[c,d]); [ a b ] (%o4) [ ] [ c d ] (%i5) C : A + B ; [ a + 1 b + 2 ] (%o5) [ ] [ c + 3 d + 4 ] ! かけ算(スカラー) (%i6) C : A . B ; [ 2 c + a 2 d + b ] (%o6) [ ] [ 4 c + 3 a 4 d + 3 b ] ! かけ算 ( 逓倍 ) (%i8) A * B ; [ a 2 b ] (%o8) [ ] [ 3 c 4 d ] ! 逆行列 (%i9) AI : invert ( A ); [ - 2 1 ] [ ] (%o9) [ 3 1 ] [ - - - ] [ 2 2 ] (%i10) A . AI ; [ 1 0 ] (%o10) [ ] [ 0 1 ]