LU分解

lu-decomposelu-solveは、線形の連立方程式を 解くために用意されている。 最初に、lu-decomposeは行列を下三角行列を上三角行列に分解する。 もし、行列が特異値なら、lu-decomposeはNILを返す。 そうでなければ、lu-solveに与えるべき順列ベクトルを返す。 lu-solveは、与えられた定数ベクトルの解をLU行列で計算する。 この手法は、同じ係数行列と異なった定数ベクトルのたくさんの組に対して 解を求めたいときに効果的である。 simultaneous-equationは、1つの解だけを求めたいときにもっとも 手軽な関数である。 lu-determinantは、LU分解された行列の行列式を計算する。 inverse-matrix関数は、lu-decomposeを1回とlu-solveをn回 使って逆行列を求める。 3*3行列での計算時間は約4msである。



lu-decompose matrix &optional result [関数]

matrixにLU分解を実行する。


lu-solve lu-mat perm-vector bvector [result] [関数]

LU分解された1次連立方程式を解く。 perm-vectorは、lu-decomposeで返された結果でなければならない。


lu-determinant lu-mat perm-vector [関数]

LU分解された行列の行列式を求める。


simultaneous-equation mat vec [関数]

係数がmatで、定数がvecで記述される1次連立方程式を解く。


inverse-matrix mat [関数]

正方行列matの逆行列を求める。


pseudo-inverse mat [関数]

特異値分解を用いて擬似逆行列を求める。




2016-04-05