next up previous
Next: MMファイルの実行方法 Up: 多項式関数 Previous: ファイル入出力

行列計算の基本

行列は普通に計算することが出来ます。MATXは強力な字句解析,構文解 析機能を有し,ほとんど必要な行列計算をスカラと同じ感覚で行なうこと が出来ます。したがって,行列の成分の計算のためのforループを一切用 いる必要がないように作られています。
  Matrix a, b, x, dx, u;

  dx = Z(3,1);

  a = [[ 1, 2, 3 ]
       [ 4, 5, 6 ]
       [ 7, 8, 9 ]];

  b = [ 1, 2, 3 ]';

  x = [1, 1, 1]';
  u = 1;
  dx = a * x + b * u;
この例のように,RealIntegerなどの変数と同じ様に普通に 計算することが出来ます。dx = Z(3,1)という行に注意して下さい。 初めにすべての成分を指定しない場合,MATXは行列の大きさについての 情報を持っていないので,代入することが出来ません。成分ひとつひとつ に代入したりする時には,このように大きさを指定しておく必要がありま す。例えば基本的な演算は以下の通りです。Matrix Aとしたとき,

転置 A'
逆行列 A $\widetilde{}$
単位行列 I(3,3)
零行列 Z(3,3)
対角行列 diag(1.0, 2.0, 3.0)
ランク rank(A)
固有値 eigval(A)


Masanobu KOGA 平成10年5月19日