Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > matrixライブラリ > Matrix::LUPDecompositionクラス > solve

instance method Matrix::LUPDecomposition#solve

solve(b) -> Vector | Matrix[permalink][rdoc]

self が正方行列 A の LUP 分解の時、一次方程式 Ax = b の解を返します。 b には Vector, Matrix, 数値の配列を指定出来ます。

それぞれベクトルのサイズ、行列の行数、配列のサイズが A の列数と一致していなければなりません。 返り値は b が行列なら行列、それ以外はベクトルになります。

[PARAM] b:
一次方程式の定数項を指定します。

require 'matrix'

lup = Matrix[[2, 1], [1, 2]].lup

lup.solve([1, -1])                  #=> Vector[(1/1), (-1/1)]
lup.solve(Vector[3, 0])             #=> Vector[(2/1), (-1/1)]
lup.solve(Matrix[[1, 3], [-1, 0]])  #=> Matrix[[(1/1), (2/1)], [(-1/1), (-1/1)]]