22件ヒット
[1-22件を表示]
(0.008秒)
ライブラリ
-
bigdecimal
/ ludcmp (22)
検索結果
先頭2件
-
LUSolve
. # ludecomp(a , n , zero = 0 , one = 1) -> [Integer] (13.0) -
n 次正方行列を表す配列 a を破壊的に変更し、返り値と併せて元の行列の LU 分解を提供します。
...し、返り値と併せて元の行列の LU 分解を提供します。
LUSolve.#lusolve の引数を構築するために使います。
@param a 行列を BigDecimal の配列で指定します。(各要素を
Row-major order で 1 次元の配列にしたオブジェクトを指定... -
LUSolve
. # lusolve(a , b , ps , zero = 0 . 0) -> [BigDecimal] (13.0) -
LU 分解を用いて、連立1次方程式 Ax = b の解 x を求めて返します。
...で指定します。
各要素を Row-major order で並べて 1 次元の配列にし、
LUSolve.#ludecomp で変換したものを指定します。
@param b ベクトルを BigDecimal の配列で指定します。
@param ps LUSolve.#ludecomp の返り値を指定します。......mal/ludcmp'
include LUSolve
a = [['1.0', '2.0'], ['3.0', '1.0']].flatten.map(&:to_d)
# x = ['1.0', -1.0']
b = ['-1.0', '2.0'].map(&:to_d)
zero = '0.0'.to_d
one = '1.0'.to_d
# 以下の 2 行は
ps = ludecomp(a, b.size, zero, one) # a が破壊的に変更される
x = lusolve(a, b, ps, zero)
#......こう書いてもよい
# x = lusolve(a, b, ludecomp(a, b.size, zero, one), zero)
p x.map(&:to_f) #=> [1.0, -1.0]
//}...