るりまサーチ (Ruby 2.5.0)

最速Rubyリファレンスマニュアル検索!
52件ヒット [1-52件を表示] (0.052秒)

別のキーワード

  1. vector *
  2. vector []
  3. vector map
  4. vector each
  5. vector each2

ライブラリ

モジュール

キーワード

検索結果

Vector#+@ -> self (45301.0)

単項演算子の + です。 self を返します。

単項演算子の + です。 self を返します。

Vector#-@ -> self (45301.0)

単項演算子の - です。 各要素の符号を反転したベクトルを返します。

単項演算子の - です。 各要素の符号を反転したベクトルを返します。

Vector.elements(a, copy = true) -> Vector (27466.0)

配列 a を要素とするベクトルを生成します。 ただし、オプション引数 copy が偽 (false) ならば、複製を行いません。

配列 a を要素とするベクトルを生成します。
ただし、オプション引数 copy が偽 (false) ならば、複製を行いません。

@param a Vectorを生成する際の要素の配列
@param copy 引数の配列 a のコピーをするかどうかのフラグ

//emlist[例][ruby]{
require 'matrix'
a = [1, 2, 3, 4]
v1 = Vector.elements(a, true)
v2 = Vector.elements(a, false)
p v1 # => Vector[1, 2, 3, 4]
p v2 #...

Vector#normalize -> Vector (27460.0)

自身を Vector#norm で正規化したベクトルを返します。

自身を Vector#norm で正規化したベクトルを返します。

@raise Vector::ZeroVectorError ベクトルが0である場合に発生します。

//emlist[例][ruby]{
require 'matrix'
v = Vector[2, 6, 9].normalize
# => Vector[0.18181818181818182, 0.5454545454545454, 0.8181818181818182]
v.norm # => 1.0
//}

@see Vector#norm

Vector#map2(v) {|x, y| ... } -> Vector (27448.0)

ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つベクトルを返します。

ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つベクトルを返します。

ベクトルの各要素と、それに対応するインデックスを持つ引数 (ベクトル or 配列) の要素との組に対して (2引数の) ブロックを評価した結果を、要素として持つベクトルを返します。

ブロックを省略した場合は Enumerator を返します。

@param v ブロック内で評価される(ベクトル or 配列)

@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていた...

絞り込み条件を変える

Vector.[](*a) -> Vector (27412.0)

可変個引数を要素とするベクトルを生成します。

可変個引数を要素とするベクトルを生成します。

Vector[a1, a2, a3, ... ]としたとき、 引数a1, a2, a3, ... を要素とするベクトルを生成します。

@param a ベクトルの要素

//emlist[例][ruby]{
require 'matrix'
v1 = Vector[1, 3, 5, 7]
v2 = Vector[5.25, 10.5]
p v1 # => Vector[1, 3, 5, 7]
p v2 # => Vector[5.25, 10.5]
//}

Vector#*(other) -> Vector (27388.0)

self の各要素に数 other を乗じたベクトルを返します。

self の各要素に数 other を乗じたベクトルを返します。

@param other self の各要素に掛ける Numeric オブジェクトを指定します。

//emlist[例][ruby]{
require 'matrix'
a = [1, 2, 3.5, 100]
v1 = Vector.elements(a)
p v1.*(2) # => Vector[2, 4, 7.0, 200]
p v1.*(-1.5) # => Vector[-1.5, -3.0, -5.25, -150.0]
//}

Vector.basis(size:, index:) -> Vector (27376.0)

size 次元ベクトル空間の index 番目の標準基底を返します。

size 次元ベクトル空間の index 番目の標準基底を返します。

//emlist[例][ruby]{
require 'matrix'
Vector.basis(size: 3, index: 1) # => Vector[0, 1, 0]
//}

@param size ベクトルの次元
@param index 標準基底の何番目か。0 origin

Vector#cross(*vs) -> Vector (27361.0)

self とベクトル vs とのクロス積を返します。

self とベクトル vs とのクロス積を返します。

self が3次元ベクトル空間のときは
普通のクロス積です。
それ以外の場合は拡張されたクロス積で
n-1個のn次元ベクトルが張る空間と
直交するベクトルを返します。

self の次元が n であるとき、 vs は n-2 個の
n次元ベクトルでなければなりません。

@param vs クロス積を取るベクトルの集合
@raise ExceptionForMatrix::ErrOperationNotDefined self の
次元が1以下であるときに発生します。
@raise ArgumentError vs のベ...

Vector#cross_product(*vs) -> Vector (27361.0)

self とベクトル vs とのクロス積を返します。

self とベクトル vs とのクロス積を返します。

self が3次元ベクトル空間のときは
普通のクロス積です。
それ以外の場合は拡張されたクロス積で
n-1個のn次元ベクトルが張る空間と
直交するベクトルを返します。

self の次元が n であるとき、 vs は n-2 個の
n次元ベクトルでなければなりません。

@param vs クロス積を取るベクトルの集合
@raise ExceptionForMatrix::ErrOperationNotDefined self の
次元が1以下であるときに発生します。
@raise ArgumentError vs のベ...

絞り込み条件を変える

Vector.zero(size) -> Vector (27361.0)

零ベクトルを返します。

零ベクトルを返します。

//emlist[例][ruby]{
require 'matrix'
Vector.zero(3) # => Vector[0, 0, 0]
//}

@param size ベクトルの次元

Vector#/(other) -> Vector (27358.0)

self の各要素を数 other で割ったベクトルを返します。

self の各要素を数 other で割ったベクトルを返します。

@param other self の各要素を割る Numeric オブジェクトを指定します。
@raise ExceptionForMatrix::ErrOperationNotDefined other が Vector や Matrix
の場合に発生します

Vector#+(v) -> Vector | Matrix (27340.0)

self にベクトル v を加えたベクトルを返します。

self にベクトル v を加えたベクトルを返します。

v には column_size が 1 の Matrix オブジェクトも指定できます。
その場合は返り値も Matrix オブジェクトになります。

@param v 加算するベクトル。加算可能な行列やベクトルを指定します。

@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。

Vector#-(v) -> Vector | Matrix (27340.0)

self からベクトル v を減じたベクトルを返します。

self からベクトル v を減じたベクトルを返します。

v には column_size が 1 の Matrix オブジェクトも指定できます。
その場合は返り値も Matrix オブジェクトになります。

@param v 減算するベクトル。減算可能な行列やベクトルを指定します。

@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。

Vector#independent?(*vectors) -> bool (27337.0)

self とベクトルの列 vectors が線形独立であれば true を返します。

self とベクトルの列 vectors が線形独立であれば true を返します。

require 'matrix'
Vector.independent?(self, *vectors)

と同じです。

@param vectors 線形独立性を判定するベクトル列

絞り込み条件を変える

Vector.independent?(*vectors) -> bool (27319.0)

ベクトルの列 vectors が線形独立であれば true を返します。

ベクトルの列 vectors が線形独立であれば true を返します。

@param vectors 線形独立性を判定するベクトル列

Vector#*(m) -> Matrix (27118.0)

自分自身を列ベクトル(行列)に変換して (実際には Matrix.column_vector(self) を適用) から、行列 m を右から乗じた行列 (Matrix クラス) を返します。

自分自身を列ベクトル(行列)に変換して (実際には Matrix.column_vector(self) を適用) から、行列 m を右から乗じた行列 (Matrix クラス) を返します。

@param m 右から乗算を行う行列
@raise ExceptionForMatrix::ErrDimensionMismatch 次元が合わない場合に発生します

=== 注意

引数の行列 m は自分自身を列ベクトルとした場合に乗算が定義できる行列である必要があります。

//emlist[例][ruby]{
require 'matrix'

v = Vector[1, 2]
a = [4,...

Vector#collect2(v) -> Enumerator (27109.0)

ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つ配列を返します。

ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つ配列を返します。

ベクトルの各要素と、それに対応するインデックスを持つ引数 v (ベクトル or 配列)の要素との組に対して (2引数の) ブロックを評価し、その結果を要素として持つ配列を返します。

ブロックを省略した場合は Enumerator を返します。

@param v ブロック内で評価される(ベクトル or 配列)

@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたとき...

Vector#collect2(v) {|x, y| ... } -> Array (27109.0)

ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つ配列を返します。

ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つ配列を返します。

ベクトルの各要素と、それに対応するインデックスを持つ引数 v (ベクトル or 配列)の要素との組に対して (2引数の) ブロックを評価し、その結果を要素として持つ配列を返します。

ブロックを省略した場合は Enumerator を返します。

@param v ブロック内で評価される(ベクトル or 配列)

@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたとき...

Vector#angle_with(v) -> Float (27091.0)

v と self がなす角度を返します。

v と self がなす角度を返します。

//emlist[例][ruby]{
require 'matrix'
Vector[1, 0].angle_with(Vector[0, 1]) # => Math::PI/2
//}

@param v このベクトルと self とがなす角度を計算します
@raise ZeroVectorError self もしくは v のどちらかが零ベクトルである場合に
発生します
@raise ExceptionForMatrix::ErrDimensionMismatch v と self の
ベクトルの次元が異なる場合に発...

絞り込み条件を変える

Vector#each2(v) -> Enumerator (27073.0)

ベクトルの各要素と、それに対応するインデックスを持つ引数 v の要素との組に対して (2引数の) ブロックを繰返し評価します。

ベクトルの各要素と、それに対応するインデックスを持つ引数 v の要素との組に対して (2引数の) ブロックを繰返し評価します。

v は配列互換(size メソッドと [] メソッドを持つ)オブジェクトです。
Vector も使えます。

ブロックを省略した場合は Enumerator を返します。

@param v 各要素と組を取るためのオブジェクト
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。
@see Array#zip

Vector#each2(v) {|x, y| ... } -> self (27073.0)

ベクトルの各要素と、それに対応するインデックスを持つ引数 v の要素との組に対して (2引数の) ブロックを繰返し評価します。

ベクトルの各要素と、それに対応するインデックスを持つ引数 v の要素との組に対して (2引数の) ブロックを繰返し評価します。

v は配列互換(size メソッドと [] メソッドを持つ)オブジェクトです。
Vector も使えます。

ブロックを省略した場合は Enumerator を返します。

@param v 各要素と組を取るためのオブジェクト
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。
@see Array#zip

Vector#magnitude -> Float (27073.0)

ベクトルの大きさ(ノルム)を返します。

ベクトルの大きさ(ノルム)を返します。

//emlist[例][ruby]{
require 'matrix'
Vector[3, 4].norm # => 5.0
Vector[Complex(0, 1), 0].norm # => 1.0
//}

@see Vector#normalize

Vector#norm -> Float (27073.0)

ベクトルの大きさ(ノルム)を返します。

ベクトルの大きさ(ノルム)を返します。

//emlist[例][ruby]{
require 'matrix'
Vector[3, 4].norm # => 5.0
Vector[Complex(0, 1), 0].norm # => 1.0
//}

@see Vector#normalize

Vector#r -> Float (27073.0)

ベクトルの大きさ(ノルム)を返します。

ベクトルの大きさ(ノルム)を返します。

//emlist[例][ruby]{
require 'matrix'
Vector[3, 4].norm # => 5.0
Vector[Complex(0, 1), 0].norm # => 1.0
//}

@see Vector#normalize

絞り込み条件を変える

Vector#dot(v) -> Float (27037.0)

ベクトル v との内積を返します。

ベクトル v との内積を返します。

@param v 内積を求めるベクトル

@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。

Vector#inner_product(v) -> Float (27037.0)

ベクトル v との内積を返します。

ベクトル v との内積を返します。

@param v 内積を求めるベクトル

@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。

Vector#==(v) -> bool (27019.0)

自分自身と引数 v を比較し、true/false を返します。

自分自身と引数 v を比較し、true/false を返します。

@param v 比較対象ベクトル

Vector#[](i) -> object | nil (27019.0)

i 番目の要素を返します。インデックスは 0 から開始します。 要素が存在しないインデックスを指定した時には nil を返します。

i 番目の要素を返します。インデックスは 0 から開始します。
要素が存在しないインデックスを指定した時には nil を返します。

@param i 取得する要素のインデックスを整数値で指定します。
インデックスは 0 から始めます。

Vector#component(i) -> object | nil (27019.0)

i 番目の要素を返します。インデックスは 0 から開始します。 要素が存在しないインデックスを指定した時には nil を返します。

i 番目の要素を返します。インデックスは 0 から開始します。
要素が存在しないインデックスを指定した時には nil を返します。

@param i 取得する要素のインデックスを整数値で指定します。
インデックスは 0 から始めます。

絞り込み条件を変える

Vector#element(i) -> object | nil (27019.0)

i 番目の要素を返します。インデックスは 0 から開始します。 要素が存在しないインデックスを指定した時には nil を返します。

i 番目の要素を返します。インデックスは 0 から開始します。
要素が存在しないインデックスを指定した時には nil を返します。

@param i 取得する要素のインデックスを整数値で指定します。
インデックスは 0 から始めます。

Vector#eql?(v) -> bool (27019.0)

自分自身と引数 v を比較し、true/false を返します。

自分自身と引数 v を比較し、true/false を返します。

@param v 比較対象ベクトル

Matrix.column_vector(column) -> Matrix (18340.0)

要素がcolumnの(n,1)型の行列(列ベクトル)を生成します。

要素がcolumnの(n,1)型の行列(列ベクトル)を生成します。

@param column (n,1)型の行列として生成するVector Array オブジェクト

Matrix.row_vector(row) -> Matrix (18340.0)

要素がrowの(1,n)型の行列(行ベクトル)を生成します。

要素がrowの(1,n)型の行列(行ベクトル)を生成します。

@param row (1,n)型の行列として生成するVector Array オブジェクト

Matrix::LUPDecomposition#solve(b) -> Vector | Matrix (424.0)

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

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

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

@param b 一次方程式の定数項を指定します。

//emlist[][ruby]{
require 'matrix'

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

lup.solve([1, -1]) #=> ...

絞り込み条件を変える

Matrix#row(i) -> Vector | nil (406.0)

i 番目の行を Vector オブジェクトで返します。 i 番目の行が存在しない場合は nil を返します。 ブロックが与えられた場合はその行の各要素についてブロックを繰り返します。

i 番目の行を Vector オブジェクトで返します。
i 番目の行が存在しない場合は nil を返します。
ブロックが与えられた場合はその行の各要素についてブロックを繰り返します。

Vector オブジェクトは Matrix オブジェクトとの演算の際には列ベクトルとして扱われることに注意してください。

@param i 行の位置を指定します。
先頭の行が 0 番目になります。i の値が負の時には末尾から
のインデックスと見倣します。末尾の行が -1 番目になります。

//emlist[例][ruby]{
require 'matrix'
a1 = ...

Matrix#column(j) -> Vector | nil (388.0)

j 番目の列を Vector オブジェクトで返します。 j 番目の列が存在しない場合は nil を返します。 ブロックが与えられた場合はその列の各要素についてブロックを繰り返します。

j 番目の列を Vector オブジェクトで返します。
j 番目の列が存在しない場合は nil を返します。
ブロックが与えられた場合はその列の各要素についてブロックを繰り返します。


@param j 列の位置を指定します。
先頭の列が 0 番目になります。j の値が負の時には末尾から
のインデックスと見倣します。末尾の列が -1 番目になります。

//emlist[例][ruby]{
require 'matrix'

a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matr...

Matrix#*(m) -> Matrix | Vector (379.0)

self に行列またはベクトル m を右から乗じた行列を返します。

self に行列またはベクトル m を右から乗じた行列を返します。

m が Vector オブジェクトなら返り値も Vector オブジェクトになります。

@param m 右からの乗算が定義可能な行列やベクトルを指定します。

@raise ExceptionForMatrix::ErrDimensionMismatch 次元が合わない場合に発生します

クラス/メソッドの定義 (271.0)

クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined

クラス/メソッドの定義
* クラス/メソッドの定義:
* class
* singleton_class
* module
* method
* operator
* nest_method
* eval_method
* singleton_method
* class_method
* limit
* 定義に関する操作:
* alias
* undef
* defined

===[a:class] クラス定義

//emlist[例][ruby]{
class Foo < S...

OpenSSL::PKCS5.#pbkdf2_hmac(pass, salt, iter, keylen, digest) -> String (175.0)

pass と salt から共通鍵暗号の鍵および IV(Initialization Vector) を生成します。

pass と salt から共通鍵暗号の鍵および IV(Initialization Vector)
を生成します。

OpenSSL::PKCS5.#pbkdf2_hmac_sha1 と異なり任意の
ハッシュ関数を利用できます。

返り値の文字列から鍵と IV に必要なバイト数を切り出して利用します。

この関数は OpenSSL 1.0.0 以降でなければ利用できません。

@param pass パスワード文字列
@param salt salt 文字列
@param iter 鍵および IV 生成時のハッシュ関数の繰り返し回数
@param keylen 結果の文字列のバイト数
@pa...

絞り込み条件を変える

Matrix#cofactor_expansion(row: nil, column: nil) -> object | Integer | Rational | Float (145.0)

row 行、もしくは column 列に関するラプラス展開をする。

row 行、もしくは column 列に関するラプラス展開をする。

通常の行列に対してはこれは単に固有値を計算するだけです。かわりにMatrix#determinant を
利用すべきです。

変則的な形状の行列に対してはそれ以上の意味を持ちます。例えば
row行/column列が行列やベクトルである場合には

//emlist[例][ruby]{
require 'matrix'
# Matrix[[7,6], [3,9]].laplace_expansion(column: 1) # => 45
Matrix[[Vector[1, 0], Vector[0, 1]], [2, 3]]....

Matrix#laplace_expansion(row: nil, column: nil) -> object | Integer | Rational | Float (145.0)

row 行、もしくは column 列に関するラプラス展開をする。

row 行、もしくは column 列に関するラプラス展開をする。

通常の行列に対してはこれは単に固有値を計算するだけです。かわりにMatrix#determinant を
利用すべきです。

変則的な形状の行列に対してはそれ以上の意味を持ちます。例えば
row行/column列が行列やベクトルである場合には

//emlist[例][ruby]{
require 'matrix'
# Matrix[[7,6], [3,9]].laplace_expansion(column: 1) # => 45
Matrix[[Vector[1, 0], Vector[0, 1]], [2, 3]]....

OpenSSL::PKCS5.#pbkdf2_hmac_sha1(pass, salt, iter, keylen) -> String (139.0)

pass と salt から共通鍵暗号の鍵および IV(Initialization Vector) を生成します。

pass と salt から共通鍵暗号の鍵および IV(Initialization Vector)
を生成します。

iter は鍵生成時のハッシュ関数の繰り返し回数で、大きな値を指定するほど
安全であることが期待されます。RFCでは少なくとも1000を
指定することを推奨しています。

返り値の文字列から鍵と IV に必要なバイト数を切り出して利用します。

ハッシュ関数には SHA1 を用います。

これは 2898(PKCS#5 v2.0)互換です。

@param pass パスワード文字列
@param salt salt 文字列
@param iter 鍵および IV 生成時のハ...

Matrix#row(i) {|x| ... } -> self (106.0)

i 番目の行を Vector オブジェクトで返します。 i 番目の行が存在しない場合は nil を返します。 ブロックが与えられた場合はその行の各要素についてブロックを繰り返します。

i 番目の行を Vector オブジェクトで返します。
i 番目の行が存在しない場合は nil を返します。
ブロックが与えられた場合はその行の各要素についてブロックを繰り返します。

Vector オブジェクトは Matrix オブジェクトとの演算の際には列ベクトルとして扱われることに注意してください。

@param i 行の位置を指定します。
先頭の行が 0 番目になります。i の値が負の時には末尾から
のインデックスと見倣します。末尾の行が -1 番目になります。

//emlist[例][ruby]{
require 'matrix'
a1 = ...

Matrix#column(j) {|x| ... } -> self (88.0)

j 番目の列を Vector オブジェクトで返します。 j 番目の列が存在しない場合は nil を返します。 ブロックが与えられた場合はその列の各要素についてブロックを繰り返します。

j 番目の列を Vector オブジェクトで返します。
j 番目の列が存在しない場合は nil を返します。
ブロックが与えられた場合はその列の各要素についてブロックを繰り返します。


@param j 列の位置を指定します。
先頭の列が 0 番目になります。j の値が負の時には末尾から
のインデックスと見倣します。末尾の列が -1 番目になります。

//emlist[例][ruby]{
require 'matrix'

a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matr...

絞り込み条件を変える

Matrix#+(m) -> Matrix (85.0)

self に行列 m を加算した行列を返します。 self の column_size が 1 なら Vector オブジェクトも指定出来ます。

self に行列 m を加算した行列を返します。
self の column_size が 1 なら Vector オブジェクトも指定出来ます。

@param m 加算する行列。加算可能な行列やベクトルを指定します。

@raise ExceptionForMatrix::ErrDimensionMismatch 次元が合わない場合に発生します

Matrix#-(m) -> Matrix (85.0)

self から行列mを減算した行列を返します。 self の column_size が 1 なら Vector オブジェクトも指定出来ます。

self から行列mを減算した行列を返します。
self の column_size が 1 なら Vector オブジェクトも指定出来ます。

@param m 減算する行列。減算可能な行列やベクトルを指定します。

@raise ExceptionForMatrix::ErrDimensionMismatch 次元が合わない場合に発生します

OpenSSL::Cipher#iv=(iv) (67.0)

IV(Initialization Vector) を設定します。

IV(Initialization Vector) を設定します。

@param iv IV文字列

Ruby用語集 (55.0)

Ruby用語集 A B C D E F G I J M N O R S Y

Ruby用語集
A B C D E F G I J M N O R S Y

a ka sa ta na ha ma ya ra wa

=== 記号・数字
: %記法
: % notation
「%」記号で始まる多種多様なリテラル記法の総称。

参照:d:spec/literal#percent

: 0 オリジン
: zero-based
番号が 0 から始まること。

例えば、
Array や Vector、Matrix などの要素の番号、
String における文字の位置、
といったものは 0 オリジンである。

: 1 オリジン
: one-based
...

Matrix#lup -> Matrix::LUPDecomposition (37.0)

行列の LUP 分解を保持したオブジェクトを返します。

行列の LUP 分解を保持したオブジェクトを返します。

Matrix::LUPDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(下三角行列、上三角行列、置換行列)
を得ることができます。これを [L, U, P] と書くと、
L*U = P*self を満たします。

//emlist[例][ruby]{
require 'matrix'
a = Matrix[[1, 2], [3, 4]]
l, u, p = a.lup
l.lower_triangular? # => true
u.upper_triangular? # => true
p....

絞り込み条件を変える

Matrix#lup_decomposition -> Matrix::LUPDecomposition (37.0)

行列の LUP 分解を保持したオブジェクトを返します。

行列の LUP 分解を保持したオブジェクトを返します。

Matrix::LUPDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(下三角行列、上三角行列、置換行列)
を得ることができます。これを [L, U, P] と書くと、
L*U = P*self を満たします。

//emlist[例][ruby]{
require 'matrix'
a = Matrix[[1, 2], [3, 4]]
l, u, p = a.lup
l.lower_triangular? # => true
u.upper_triangular? # => true
p....

Matrix#*(other) -> Matrix (34.0)

self の各成分に数 other を掛けた行列を返します。

self の各成分に数 other を掛けた行列を返します。

@param other self の各成分に掛ける Numeric オブジェクトを指定します。