next up previous
Next: 1.8 ロボットプログラミング用のlisp: Euslisp Up: 1.7 Xlispから統計処理用に拡張された xlispstat Previous: 1.7.3 ドキュメントの表示 help

1.7.4 行列演算

これらを使った例を上げれば以下のようになる.
> (setq c (identity-matrix 3))
#2A((1 0 0) (0 1 0) (0 0 1))
> (%* c a)
(1 2 3)
> (%* c b)
(2 3 4)
> (%* b c)
(2 3 4)
> (%* c c)
#2A((1 0 0) (0 1 0) (0 0 1))
> (setq d (+ c c))
#2A((2 0 0) (0 2 0) (0 0 2))
> (inverse d)
#2A((0.5 0 0) (0 0.5 0) (0 0 0.5))
> (matmult d (inverse d))
#2A((1 0 0) (0 1 0) (0 0 1))
> (setq a (make-array '(2 2)
          :initial-contents '((1 2) (3 4))))
#2A((1 2) (3 4))
> (determinant a)
-2.0
> (inverse a)
#2A((-1.9999999999999996 0.9999999999999998)
    (1.4999999999999998 -0.4999999999999999))


generated through LaTeX2HTML. M.Inaba 平成18年5月7日