るりまサーチ (Ruby 2.3.0)

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

別のキーワード

  1. matrix *
  2. matrix []
  3. matrix each
  4. matrix index
  5. matrix find_index

検索結果

<< 1 2 > >>

Matrix::LUPDecomposition#l -> Matrix (87610.0)

LUP分解の下半行列部分を返します。

LUP分解の下半行列部分を返します。

Matrix#lup -> Matrix::LUPDecomposition (70072.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 (70072.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#laplace_expansion(row: nil, column: nil) -> object | Integer | Rational | Float (69694.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#collect {|x| ... } -> Matrix (69664.0)

行列の各要素に対してブロックの適用を繰り返した結果を、要素として持つ行列を生成します。

行列の各要素に対してブロックの適用を繰り返した結果を、要素として持つ行列を生成します。


//emlist[例][ruby]{
require 'matrix'
a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]

# 行列mのすべての要素に100を加える。
p m.collect { |x|
x + 100
} # => Matrix[[101, 102, 103], [110, 115, 120], [99, 98, 101.5]]
//}

絞り込み条件を変える

Matrix#real -> Matrix (69661.0)

行列の実部を返します。

行列の実部を返します。

//emlist[例][ruby]{
require 'matrix'
Matrix[[Complex(1,2), Complex(0,1), 0], [1, 2, 3]]
# => 1+2i i 0
# 1 2 3
Matrix[[Complex(1,2), Complex(0,1), 0], [1, 2, 3]].real
# => 1 0 0
# 1 2 3
//}

Matrix#clone -> Matrix (69607.0)

自分自身のコピーを返します。

自分自身のコピーを返します。

Matrix#elements_to_f -> Matrix (69607.0)

各要素を浮動小数点数 Float に変換した行列を返します。

各要素を浮動小数点数 Float に変換した行列を返します。

このメソッドは deprecated です。 map(&:to_f) を使ってください。

Matrix#elements_to_i -> Matrix (69607.0)

各要素を整数 Integer に変換した行列を返します。

各要素を整数 Integer に変換した行列を返します。

このメソッドは deprecated です。 map(&:to_i) を使ってください。

Matrix#elements_to_r -> Matrix (69607.0)

各要素を有理数 Rational に変換した行列を返します。

各要素を有理数 Rational に変換した行列を返します。

このメソッドは deprecated です。 map(&:to_r) を使ってください。

絞り込み条件を変える

Matrix#real? -> bool (69376.0)

行列の全要素が実(Numeric#real?)であれば真を返します。

行列の全要素が実(Numeric#real?)であれば真を返します。

Complexオブジェクトを要素に持つ場合は虚部が0でも偽を返します。

//emlist[例][ruby]{
require 'matrix'
Matrix[[1, 0], [0, 1]].real? # => true
Matrix[[Complex(0, 1), 0], [0, 1]].real? # => false
# 要素が実数であっても Complex オブジェクトなら偽を返す。
Matrix[[Complex(1, 0), 0], [0, 1]].real? # => false
//}

Matrix#regular? -> bool (69376.0)

行列が正方で正則なら真を、特異なら偽を返します。

行列が正方で正則なら真を、特異なら偽を返します。

行列が正則であるとは、正方行列であり、かつ、その逆行列が存在することです。
行列式が0でないことと同値です。

正方行列でない場合には例外 ExceptionForMatrix::ErrDimensionMismatch を
発生させます。


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

a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]
p m.regular? # => true

a1 = [ 1, ...

Matrix#column(j) -> Vector | nil (69340.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#column(j) {|x| ... } -> self (69340.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#column_vectors -> [Vector] (69340.0)

自分自身を列ベクトルの配列として返します。

自分自身を列ベクトルの配列として返します。

//emlist[例][ruby]{
require 'matrix'
a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]

p m.row_vectors # => [Vector[1, 10, -1], Vector[2, 15, -2], Vector[3, 20, 1.5]]
//}

絞り込み条件を変える

Matrix#column_count -> Integer (69304.0)

行列の列数を返します。

行列の列数を返します。

Matrix#column_size -> Integer (69304.0)

行列の列数を返します。

行列の列数を返します。

Matrix#diagonal? -> bool (69304.0)

行列が対角行列ならば真を返します。

行列が対角行列ならば真を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Matrix#lower_triangular? -> bool (69304.0)

行列が下三角行列ならば真を返します。

行列が下三角行列ならば真を返します。

Matrix#normal? -> bool (69304.0)

行列が正規行列ならば真を返します。

行列が正規行列ならば真を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

絞り込み条件を変える

Matrix#orthogonal? -> bool (69304.0)

行列が直交行列ならば真を返します。

行列が直交行列ならば真を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Matrix#singular? -> bool (69304.0)

行列が正方で特異なら真を/正則なら偽を返します。

行列が正方で特異なら真を/正則なら偽を返します。

行列が特異(singular)であるとは、正則でないことです。
行列式が0であること同値です。

正方行列でない場合には例外 ExceptionForMatrix::ErrDimensionMismatch を
発生させます。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Matrix#upper_triangular? -> bool (69304.0)

行列が上三角行列ならば真を返します。

行列が上三角行列ならば真を返します。

Matrix#rectangular -> [Matrix, Matrix] (60952.0)

行列を実部と虚部に分解したものを返します。

行列を実部と虚部に分解したものを返します。


//emlist[例][ruby]{
m.rect == [m.real, m.imag] # ==> true for all matrices m
//}

@see Matrix#imaginary, Matrix#real

Matrix::EigenvalueDecomposition#eigenvalue_matrix -> Matrix (60913.0)

固有値を対角成分に並べた行列を返します。

固有値を対角成分に並べた行列を返します。

絞り込み条件を変える

Matrix::EigenvalueDecomposition#eigenvector_matrix_inv -> Matrix (60631.0)

左固有ベクトルを縦に並べた行列を返します。

左固有ベクトルを縦に並べた行列を返します。

これは Matrix::EigenvalueDecomposition#v の逆行列です

Matrix::EigenvalueDecomposition#eigenvector_matrix -> Matrix (60613.0)

右固有ベクトルを横に並べた行列を返します。

右固有ベクトルを横に並べた行列を返します。

Matrix#map {|x| ... } -> Matrix (60364.0)

行列の各要素に対してブロックの適用を繰り返した結果を、要素として持つ行列を生成します。

行列の各要素に対してブロックの適用を繰り返した結果を、要素として持つ行列を生成します。


//emlist[例][ruby]{
require 'matrix'
a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]

# 行列mのすべての要素に100を加える。
p m.collect { |x|
x + 100
} # => Matrix[[101, 102, 103], [110, 115, 120], [99, 98, 101.5]]
//}

Matrix#element(i, j) -> () (60340.0)

(i,j)要素を返します。 行列の範囲外の値を指定した場合には nil を返します。

(i,j)要素を返します。
行列の範囲外の値を指定した場合には nil を返します。

@param i 要素の行成分を0オリジンで指定します。
@param j 要素の列成分を0オリジンで指定します。



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

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

p m[0, 0] # => 1
p m[1, 1] # => 15
p m[1, 2] # => 20
p m[1, 3] # => nil
//}

Matrix#eql?(other) -> bool (60304.0)

自分自身と other を比較し、同値であれば真(true)を返します。

自分自身と other を比較し、同値であれば真(true)を返します。

@param other 比較対象のオブジェクト

絞り込み条件を変える

Matrix::EigenvalueDecomposition#eigenvalues -> [Float] (60304.0)

固有値を配列で返します。

固有値を配列で返します。

Matrix::LUPDecomposition#solve(b) -> Vector | Matrix (51727.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#eigen -> Matrix::EigenvalueDecomposition (51682.0)

行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。

行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。

Matrix::EigenvalueDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(右固有ベクトル、固有値行列、左固有ベクトル)
を得ることができます。
これを [V, D, W] と書くと、
(元の行列が対角化可能ならば)、
D は対角行列で、 self == V*D*W, V = W.inverse を満たします。
D のそれぞれの対角成分が行列の固有値です。

//emlist[例][ruby]{
require 'matrix'
m = Matrix[[1, 2], [...

Matrix#eigensystem -> Matrix::EigenvalueDecomposition (51682.0)

行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。

行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。

Matrix::EigenvalueDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(右固有ベクトル、固有値行列、左固有ベクトル)
を得ることができます。
これを [V, D, W] と書くと、
(元の行列が対角化可能ならば)、
D は対角行列で、 self == V*D*W, V = W.inverse を満たします。
D のそれぞれの対角成分が行列の固有値です。

//emlist[例][ruby]{
require 'matrix'
m = Matrix[[1, 2], [...

Matrix#minor(from_row, row_size, from_col, col_size) -> Matrix (51664.0)

selfの部分行列を返します。

selfの部分行列を返します。

自分自身の部分行列を返します。
ただし、パラメータは次の方法で指定します。
(1) 開始行番号, 行の大きさ, 開始列番号, 列の大きさ
(2) 開始行番号..終了行番号, 開始列番号..終了列番号

@param from_row 部分行列の開始行(0オリジンで指定)
@param row_size 部分行列の行サイズ
@param from_col 部分行列の開始列(0オリジンで指定)
@param col_size 部分行列の列サイズ

//emlist[例][ruby]{
require 'matrix'
a1 = [ 1, 2, 3, ...

絞り込み条件を変える

Matrix#minor(from_row..to_row, from_col..to_col) -> Matrix (51664.0)

selfの部分行列を返します。

selfの部分行列を返します。

自分自身の部分行列を返します。
ただし、パラメータは次の方法で指定します。
(1) 開始行番号, 行の大きさ, 開始列番号, 列の大きさ
(2) 開始行番号..終了行番号, 開始列番号..終了列番号

@param from_row 部分行列の開始行(0オリジンで指定)
@param row_size 部分行列の行サイズ
@param from_col 部分行列の開始列(0オリジンで指定)
@param col_size 部分行列の列サイズ

//emlist[例][ruby]{
require 'matrix'
a1 = [ 1, 2, 3, ...

Matrix#first_minor(row, column) -> Matrix (51607.0)

self から第 row 行と第 column 列を取り除いた行列を返します。

self から第 row 行と第 column 列を取り除いた行列を返します。

@param row 行
@param column 列
@raise ArgumentError row, column が行列の行数/列数を越えている場合に発生します。

Matrix#cofactor_expansion(row: nil, column: nil) -> object | Integer | Rational | Float (51394.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#each(which = :all) -> Enumerator (51376.0)

行列の各要素を引数としてブロックを呼び出します。

行列の各要素を引数としてブロックを呼び出します。

0行目、1行目、…という順番で処理します。
which に以下の Symbol を指定することで
引数として使われる要素を限定することができます。
* :all - すべての要素(デフォルト)
* :diagonal - 対角要素
* :off_diagonal 対角要素以外
* :lower 対角成分とそれより下側の部分
* :upper対角成分とそれより上側の部分
* :strict_lower 対角成分の下側
* :strict_upper 対角成分の上側

ブロックを省略した場合、 Enumerator ...

Matrix#each(which = :all) {|e| ... } -> self (51376.0)

行列の各要素を引数としてブロックを呼び出します。

行列の各要素を引数としてブロックを呼び出します。

0行目、1行目、…という順番で処理します。
which に以下の Symbol を指定することで
引数として使われる要素を限定することができます。
* :all - すべての要素(デフォルト)
* :diagonal - 対角要素
* :off_diagonal 対角要素以外
* :lower 対角成分とそれより下側の部分
* :upper対角成分とそれより上側の部分
* :strict_lower 対角成分の下側
* :strict_upper 対角成分の上側

ブロックを省略した場合、 Enumerator ...

絞り込み条件を変える

Matrix#each_with_index(which = :all) -> Enumerator (51376.0)

行列の各要素をその位置とともに引数としてブロックを呼び出します。

行列の各要素をその位置とともに引数としてブロックを呼び出します。

which で処理する要素の範囲を指定することができます。
Matrix#each と同じなのでそちらを参照してください。

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

//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].each_with_index do |e, row, col|
puts "#{e} at #{row}, #{col}"
end
# => 1 at 0, 0
# => 2 at 0, 1
# => 3...

Matrix#each_with_index(which = :all) {|e, row, col| ... } -> self (51376.0)

行列の各要素をその位置とともに引数としてブロックを呼び出します。

行列の各要素をその位置とともに引数としてブロックを呼び出します。

which で処理する要素の範囲を指定することができます。
Matrix#each と同じなのでそちらを参照してください。

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

//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].each_with_index do |e, row, col|
puts "#{e} at #{row}, #{col}"
end
# => 1 at 0, 0
# => 2 at 0, 1
# => 3...

Matrix#find_index(selector = :all) -> Enumerator (51376.0)

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。

複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。

selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。

//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ...

Matrix#find_index(selector = :all) {|e| ... } -> [Integer, Integer] | nil (51376.0)

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。

複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。

selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。

//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ...

Matrix#find_index(value, selector = :all) -> [Integer, Integer] | nil (51376.0)

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。

複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。

selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。

//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ...

絞り込み条件を変える

Matrix#index(selector = :all) -> Enumerator (51376.0)

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。

複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。

selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。

//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ...

Matrix#index(selector = :all) {|e| ... } -> [Integer, Integer] | nil (51376.0)

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。

複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。

selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。

//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ...

Matrix#index(value, selector = :all) -> [Integer, Integer] | nil (51376.0)

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。

複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。

selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。

//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ...

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

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

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

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

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

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

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

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

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

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

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

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

絞り込み条件を変える

Matrix#det_e -> Rational | Float (51352.0)

不正な値を返します。 Matrix#determinant を代わりに使ってください。

不正な値を返します。
Matrix#determinant を代わりに使ってください。

Matrix#determinant_e -> Rational | Float (51352.0)

不正な値を返します。 Matrix#determinant を代わりに使ってください。

不正な値を返します。
Matrix#determinant を代わりに使ってください。

Matrix#tr -> Integer | Float | Rational (51340.0)

トレース (trace) を返します。

トレース (trace) を返します。

行列のトレース (trace) とは、対角要素の和です。

//emlist[例][ruby]{
require 'matrix'
Matrix[[7,6], [3,9]].trace # => 16
//}

trace は正方行列でのみ定義されます。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Matrix#trace -> Integer | Float | Rational (51340.0)

トレース (trace) を返します。

トレース (trace) を返します。

行列のトレース (trace) とは、対角要素の和です。

//emlist[例][ruby]{
require 'matrix'
Matrix[[7,6], [3,9]].trace # => 16
//}

trace は正方行列でのみ定義されます。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Matrix::EigenvalueDecomposition#v_inv -> Matrix (51331.0)

左固有ベクトルを縦に並べた行列を返します。

左固有ベクトルを縦に並べた行列を返します。

これは Matrix::EigenvalueDecomposition#v の逆行列です

絞り込み条件を変える

Matrix#cofactor(row, column) -> Integer | Rational | Float (51322.0)

(row, column)-余因子を返します。

(row, column)-余因子を返します。

各要素の型によって返り値が変わります。

@param row 行
@param column 列
@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方でない場合に発生します。
@see Matrix#adjugate

Matrix#empty? -> bool (51322.0)

行列が要素を持たないならば真を返します。

行列が要素を持たないならば真を返します。

要素を持たないとは、行数か列数のいずれかが0であることを意味します。

@see Matrix.empty

Matrix::LUPDecomposition#singular? -> bool (51322.0)

元の行列が正方で特異なら真を/正則なら偽を返します。 LUP 分解の結果を利用して判定します。

元の行列が正方で特異なら真を/正則なら偽を返します。
LUP 分解の結果を利用して判定します。

@see Matrix#singular?

Matrix::EigenvalueDecomposition#v -> Matrix (51313.0)

右固有ベクトルを横に並べた行列を返します。

右固有ベクトルを横に並べた行列を返します。

Matrix#+@ -> self (51304.0)

単項 +。self を返します。

単項 +。self を返します。

絞り込み条件を変える

Matrix#==(other) -> bool (51304.0)

自分自身と other を比較し、同値であれば真(true)を返します。

自分自身と other を比較し、同値であれば真(true)を返します。

@param other 比較対象のオブジェクト

Matrix#det -> Rational | Float (51304.0)

行列式 (determinant) の値を返します。

行列式 (determinant) の値を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 正方行列でない場合に発生します

Matrix#determinant -> Rational | Float (51304.0)

行列式 (determinant) の値を返します。

行列式 (determinant) の値を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 正方行列でない場合に発生します

Matrix#hermitian? -> bool (51304.0)

行列がエルミートならば真を返します。

行列がエルミートならば真を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Matrix#permutation? -> bool (51304.0)

行列が置換行列ならば真を返します。

行列が置換行列ならば真を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

絞り込み条件を変える

Matrix#square? -> bool (51304.0)

正方行列であるなら、真を返します。

正方行列であるなら、真を返します。

Matrix#symmetric? -> bool (51304.0)

行列が対称ならば真を返します。

行列が対称ならば真を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Matrix#unitary? -> bool (51304.0)

行列がユニタリならば真を返します。

行列がユニタリならば真を返します。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Matrix#zero? -> bool (51304.0)

行列が零行列ならば真を返します。

行列が零行列ならば真を返します。

Matrix::EigenvalueDecomposition#to_a -> [Matrix, Matrix, Matrix] (43066.0)

Matrix::EigenvalueDecomposition#v, Matrix::EigenvalueDecomposition#d, Matrix::EigenvalueDecomposition#v_inv をこの順に並べた配列を返します。

Matrix::EigenvalueDecomposition#v,
Matrix::EigenvalueDecomposition#d,
Matrix::EigenvalueDecomposition#v_inv
をこの順に並べた配列を返します。

絞り込み条件を変える

Matrix::EigenvalueDecomposition#to_ary -> [Matrix, Matrix, Matrix] (43066.0)

Matrix::EigenvalueDecomposition#v, Matrix::EigenvalueDecomposition#d, Matrix::EigenvalueDecomposition#v_inv をこの順に並べた配列を返します。

Matrix::EigenvalueDecomposition#v,
Matrix::EigenvalueDecomposition#d,
Matrix::EigenvalueDecomposition#v_inv
をこの順に並べた配列を返します。

Matrix::LUPDecomposition#to_a -> [Matrix, Matrix, Matrix] (42922.0)

分解した行列を [下半行列, 上半行列, 置換行列] という3要素の配列で 返します。

分解した行列を [下半行列, 上半行列, 置換行列] という3要素の配列で
返します。

Matrix::LUPDecomposition#to_ary -> [Matrix, Matrix, Matrix] (42922.0)

分解した行列を [下半行列, 上半行列, 置換行列] という3要素の配列で 返します。

分解した行列を [下半行列, 上半行列, 置換行列] という3要素の配列で
返します。

Vector#angle_with(v) -> Float (42322.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#collect -> Enumerator (42322.0)

ベクトルの各要素に対してブロックを評価した結果を、要素として持つベクトルを生成します。

ベクトルの各要素に対してブロックを評価した結果を、要素として持つベクトルを生成します。

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

//emlist[例][ruby]{
require 'matrix'
a = [1, 2, 3.5, -10]
v1 = Vector.elements(a)
p v1 # => Vector[1, 2, 3.5, -10]
v2 = v1.map{|x|
x * -1
}
p v2 # => Vector[-1, -2, -3.5, 10]
//}

絞り込み条件を変える

Vector#collect {|x| ... } -> Vector (42322.0)

ベクトルの各要素に対してブロックを評価した結果を、要素として持つベクトルを生成します。

ベクトルの各要素に対してブロックを評価した結果を、要素として持つベクトルを生成します。

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

//emlist[例][ruby]{
require 'matrix'
a = [1, 2, 3.5, -10]
v1 = Vector.elements(a)
p v1 # => Vector[1, 2, 3.5, -10]
v2 = v1.map{|x|
x * -1
}
p v2 # => Vector[-1, -2, -3.5, 10]
//}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Vector#elements_to_f -> Vector (42322.0)

ベクトルの各成分をFloatに変換したベクトルを返します。

ベクトルの各成分をFloatに変換したベクトルを返します。

このメソッドは deprecated です。 map(&:to_f) を使ってください。

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

v = Vector.elements([2, 3, 5, 7, 9])
vf = v.elements_to_f
p vf # => "Vector[2.0, 3.0, 5.0, 7.0, 9.0]"
//}

Vector#elements_to_i -> Vector (42322.0)

ベクトルの各成分をIntegerに変換したベクトルを返します。

ベクトルの各成分をIntegerに変換したベクトルを返します。

このメソッドは deprecated です。 map(&:to_i) を使ってください。

//emlist[例][ruby]{
require 'matrix'
v = Vector.elements([2.5, 3.0, 5.01, 7])
vi = v.elements_to_i
p vi # => "Vector[2, 3, 5, 7]"
//}

絞り込み条件を変える

Vector#elements_to_r -> Vector (42322.0)

ベクトルの各成分をRationalに変換したベクトルを返します。

ベクトルの各成分をRationalに変換したベクトルを返します。

このメソッドは deprecated です。 map(&:to_r) を使ってください。

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

v = Vector.elements([2.5, 3.0, 5.75, 7])
vr = v.elements_to_r
p vr # => "Vector[Rational(5, 2), Rational(3, 1), Rational(23, 4), Rational(7, 1)]"
//}

Vector#normalize -> Vector (42322.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

Matrix::EigenvalueDecomposition#d -> Matrix (42313.0)

固有値を対角成分に並べた行列を返します。

固有値を対角成分に並べた行列を返します。

Matrix::LUPDecomposition#p -> Matrix (42307.0)

LUP分解の置換行列部分を返します。

LUP分解の置換行列部分を返します。

Matrix::LUPDecomposition#u -> Matrix (42307.0)

LUP分解の上半行列部分を返します。

LUP分解の上半行列部分を返します。

絞り込み条件を変える

Vector#clone() -> Vector (42304.0)

自分自身をコピーしたベクトルを返します。

自分自身をコピーしたベクトルを返します。

Matrix::LUPDecomposition#det -> Numeric (42022.0)

元の行列の行列式の値を返します。 LUP 分解の結果を利用して計算します。

元の行列の行列式の値を返します。
LUP 分解の結果を利用して計算します。

@see Matrix#determinant

Matrix::LUPDecomposition#determinant -> Numeric (42022.0)

元の行列の行列式の値を返します。 LUP 分解の結果を利用して計算します。

元の行列の行列式の値を返します。
LUP 分解の結果を利用して計算します。

@see Matrix#determinant

Matrix::EigenvalueDecomposition#eigenvectors -> [Vector] (42004.0)

右固有ベクトルを配列で返します。

右固有ベクトルを配列で返します。

Matrix::LUPDecomposition#pivots -> [Integer] (42004.0)

ピボッティングを表す配列を返します。

ピボッティングを表す配列を返します。

絞り込み条件を変える

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

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

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

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

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

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

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

@param v 比較対象ベクトル

Vector#map -> Enumerator (33022.0)

ベクトルの各要素に対してブロックを評価した結果を、要素として持つベクトルを生成します。

ベクトルの各要素に対してブロックを評価した結果を、要素として持つベクトルを生成します。

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

//emlist[例][ruby]{
require 'matrix'
a = [1, 2, 3.5, -10]
v1 = Vector.elements(a)
p v1 # => Vector[1, 2, 3.5, -10]
v2 = v1.map{|x|
x * -1
}
p v2 # => Vector[-1, -2, -3.5, 10]
//}

Vector#map {|x| ... } -> Vector (33022.0)

ベクトルの各要素に対してブロックを評価した結果を、要素として持つベクトルを生成します。

ベクトルの各要素に対してブロックを評価した結果を、要素として持つベクトルを生成します。

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

//emlist[例][ruby]{
require 'matrix'
a = [1, 2, 3.5, -10]
v1 = Vector.elements(a)
p v1 # => Vector[1, 2, 3.5, -10]
v2 = v1.map{|x|
x * -1
}
p v2 # => Vector[-1, -2, -3.5, 10]
//}

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

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

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

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

と同じです。

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

絞り込み条件を変える

Vector#magnitude -> Float (24322.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 (24322.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 (24322.0)

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

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

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

@see Vector#normalize

Vector#+@ -> self (24304.0)

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

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

Vector#-@ -> self (24304.0)

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

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

絞り込み条件を変える

<< 1 2 > >>