Maximaによる数式処理 Maximaの行列
Maxima(マキシマ)で、数学の行列の扱い方を紹介します。
まず、Maximaにおける行列の定義の仕方と、加算、減算、積、べき乗を示します。
演算
Maxima
行列
matrix([1行目の成分リスト],[2行目の成分リスト],…)
行列Aの定義
A:matrix( [ ], [ ],…)
行列の和(加算)
+
行列の差(減算)
-
行列の積
.
行列のべき乗
^^
行列の成分のべき乗
^
では、実際の使い方を下記に記します。
注意が必要なのは、べき乗で、うっかり「^」としてしまいそうですが、「^」では行列の成分をそれぞれべき乗することになります。
行列自体のべき乗は、「^^」です。
次に、転置行列、逆行列のマキシマでの演算子を記しておきます。
演算 | Maxima |
kill(A) | 行列Aをクリア |
転置行列 | transpose() |
逆行列 | invert() |
なお、kill(A)とは一度定義した行列Aをクリアすることです。
実際の使用例を見てみましょう。
はじめに先ほど定義した行列Aをクリアしています。
10個目の式で、Aがクリアされたことが分かります。
11個目の式で、行列Aを再定義しました。
逆行列は、invert(A)ですが、べき乗を用いて A^^(-1)でも表わすことができます。
15個目の式で、行列Aと逆行列の積が、ちゃんと単位行列になっていることが示されました。
最後に、行列式と、固有値、固有ベクトルの演算子を記します。
演算 | Maxima |
行列式 | determinant() |
固有値 | eigenvalues() |
固有ベクトル | eigenvectors() |
固有値は、eigenvalues()で求めることができます。
得られた [ [3,-1] , [1,1] ] ですが、固有値は3と-1です。
この固有値がそれぞれ重複度1と1であるという意味です。
なお、固有ベクトルは、eigenvectorsで求めることができますが、固有値も同時にもとめてくれます。
得られた結果、[ [ [3,-1] , [1,1] , [ [ [1,1] , [ [1,-1] ] ] ]は、はじめの[ [ [3,-1] , [1,1] ,までは固有値eigenvalues()の結果と同じことを示しています。
[1,1] , [1,-1]が固有ベクトルです。
ここで、固有値3に対する固有ベクトルが[1,1]で、
固有値-1に対する固有ベクトルが[1,-1]とよみます。