別のキーワード
種類
- インスタンスメソッド (19)
- 特異メソッド (8)
クラス
- Matrix (18)
-
Matrix
:: EigenvalueDecomposition (1) -
Matrix
:: LUPDecomposition (1) - Vector (7)
キーワード
- coerce (1)
- collect2 (2)
- combine (2)
- each2 (2)
- eigensystem (1)
- elements (1)
- empty (1)
- empty? (1)
-
entrywise
_ product (1) -
hadamard
_ product (1) - hstack (2)
- identity (1)
- imaginary (1)
- map2 (1)
- rows (1)
- symmetric? (1)
-
to
_ a (2) -
to
_ ary (2) - unitary? (1)
- vstack (2)
検索結果
先頭5件
-
Matrix
# empty? -> bool (18307.0) -
行列が要素を持たないならば true を返します。
...行列が要素を持たないならば true を返します。
要素を持たないとは、行数か列数のいずれかが0であることを意味します。
@see Matrix.empty... -
Matrix
# entrywise _ product(m) -> Matrix (18307.0) -
アダマール積(要素ごとの積)を返します。
...ダマール積(要素ごとの積)を返します。
@raise ExceptionForMatrix::ErrDimensionMismatch 行や列の要素数が一致しない時に発生します。
//emlist[例][ruby]{
require 'matrix'
Matrix[[1,2], [3,4]].hadamard_product(Matrix[[1,2], [3,2]]) # => Matrix[[1, 4], [9, 8]]
//}... -
Matrix
# symmetric? -> bool (18307.0) -
行列が対称ならば true を返します。
...行列が対称ならば true を返します。
@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します... -
Matrix
# unitary? -> bool (18307.0) -
行列がユニタリならば true を返します。
...行列がユニタリならば true を返します。
@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します... -
Matrix
. empty(row _ size=0 , column _ size=0) -> Matrix (18307.0) -
要素を持たない行列を返します。
...一方は0である必要があります。
//emlist[例][ruby]{
require 'matrix'
m = Matrix.empty(2, 0)
m == Matrix[ [], [] ]
# => true
n = Matrix.empty(0, 3)
n == Matrix.columns([ [], [], [] ])
# => true
m * n
# => Matrix[[0, 0, 0], [0, 0, 0]]
//}
@param row_size 行列の行数
@param column_si... -
Matrix
# eigensystem -> Matrix :: EigenvalueDecomposition (9307.0) -
行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。
...行列の固有値と左右の固有ベクトルを保持したオブジェクトを返します。
Matrix::EigenvalueDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(右固有ベクトル、固有値行列、左固有ベクトル)
を得ることがで......ruby]{
require 'matrix'
m = Matrix[[1, 2], [3, 4]]
v, d, v_inv = m.eigensystem
d.diagonal? # => true
v.inv == v_inv # => true
(v * d * v_inv).round(5) == m # => true
//}
@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します
@see Matrix::EigenvalueDec... -
Matrix
# imaginary -> Matrix (9307.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]].imaginary
# => 2i i 0
# 0 0 0
//}... -
Matrix
. identity(n) -> Matrix (9307.0) -
n次の単位行列を生成します。
n次の単位行列を生成します。
@param n 単位行列の次元
単位行列とは、対角要素が全て1で非対角要素が全て0であるような行列のことです。 -
Matrix
:: EigenvalueDecomposition # to _ ary -> [Matrix , Matrix , Matrix] (9307.0) -
Matrix::EigenvalueDecomposition#v, Matrix::EigenvalueDecomposition#d, Matrix::EigenvalueDecomposition#v_inv をこの順に並べた配列を返します。
...
Matrix::EigenvalueDecomposition#v,
Matrix::EigenvalueDecomposition#d,
Matrix::EigenvalueDecomposition#v_inv
をこの順に並べた配列を返します。... -
Matrix
:: LUPDecomposition # to _ ary -> [Matrix , Matrix , Matrix] (9307.0) -
分解した行列を [下半行列, 上半行列, 置換行列] という3要素の配列で 返します。
分解した行列を [下半行列, 上半行列, 置換行列] という3要素の配列で
返します。 -
Matrix
# hadamard _ product(m) -> Matrix (9007.0) -
アダマール積(要素ごとの積)を返します。
...ダマール積(要素ごとの積)を返します。
@raise ExceptionForMatrix::ErrDimensionMismatch 行や列の要素数が一致しない時に発生します。
//emlist[例][ruby]{
require 'matrix'
Matrix[[1,2], [3,4]].hadamard_product(Matrix[[1,2], [3,2]]) # => Matrix[[1, 4], [9, 8]]
//}... -
Vector
# collect2(v) {|x , y| . . . } -> Array (382.0) -
ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つ配列を返します。
...クを省略した場合は Enumerator を返します。
@param v ブロック内で評価される(ベクトル or 配列)
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。
@see Vec... -
Vector
# map2(v) {|x , y| . . . } -> Vector (382.0) -
ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つベクトルを返します。
...クを省略した場合は Enumerator を返します。
@param v ブロック内で評価される(ベクトル or 配列)
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。
@see Vec......t2
次の例は、2つのベクトルの要素毎の積を要素として持つベクトルを生成します。
//emlist[例][ruby]{
require 'matrix'
v1 = Vector[2, 3, 5]
v2 = Vector[7, 9, 11]
a = Array[7, 9, 11]
z = v1.map2(v2) { |x, y| x * y }
p z # => Vector[14, 27, 55]
z = v1.map2(a) { |... -
Vector
# each2(v) {|x , y| . . . } -> self (310.0) -
ベクトルの各要素と、それに対応するインデックスを持つ引数 v の要素との組に対して (2引数の) ブロックを繰返し評価します。
...ロックを省略した場合は Enumerator を返します。
@param v 各要素と組を取るためのオブジェクト
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。
@see Array... -
Matrix
# coerce(other) -> Array (307.0) -
他の数値オブジェクトとの変換を行います。
...クトをMatrix::Scalarのオブジェクトに変換し、selfとの組を配列として返します。
@param other 変換する数値オブジェクト
//emlist[例][ruby]{
require 'matrix'
a1 = [1, 2]
a2 = [-1.25, 2.2]
m = Matrix[a1, a2]
r = Rational(1, 2)
p m.coerce(r) #=> [#<Matrix::Scalar:......0x832df18 @value=(1/2)>, Matrix[[1, 2], [-1.25, 2.2]]]
//}... -
Matrix
# to _ a -> Array (307.0) -
自分自身をArrayに変換したものを返します。
...します。
行ベクトルを配列(Array)としたものの配列(つまり配列の配列)として返します。
//emlist[例][ruby]{
require 'matrix'
a1 = [ 1, 2, 3]
a2 = [10, 15, 20]
a3 = [-1, -2, 1.5]
m = Matrix[a1, a2, a3]
p m.to_a # => [[1, 2, 3], [10, 15, 20], [-1, -2, 1.5]]
//}... -
Matrix
. rows(rows , copy = true) -> Matrix (307.0) -
引数 rows を行ベクトルの列とする行列を生成します。
...せん。
//emlist[例][ruby]{
require 'matrix'
a1 = [1, 2, 3]
a2 = [10, 15, 20]
m = Matrix.rows([a1, a2], false) # 配列を複製せずに行列を生成
p m # => Matrix[[1, 2, 3], [10, 15, 20]]
a2[1] = 1000 # 配列のデータを変更
p m # => Matrix[[1, 2, 3], [10, 1000, 20]]
//}
@param ro... -
Vector
# to _ a -> Array (307.0) -
ベクトル(Vector)から配列 (Array) に変換します。
...ベクトル(Vector)から配列 (Array) に変換します。
//emlist[例][ruby]{
require 'matrix'
v = Vector[2, 3, 5, 7, 9]
p v.to_a
# => [2, 3, 5, 7, 9]
//}... -
Vector
. elements(a , copy = true) -> Vector (307.0) -
配列 a を要素とするベクトルを生成します。 ただし、オプション引数 copy が偽 (false) ならば、複製を行いません。
...orを生成する際の要素の配列
@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[1, 2, 3... -
Vector
# collect2(v) -> Enumerator (82.0) -
ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つ配列を返します。
...クを省略した場合は Enumerator を返します。
@param v ブロック内で評価される(ベクトル or 配列)
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。
@see Vec... -
Matrix
# hstack(*matrices) -> Matrix (43.0) -
行列 self と matrices を横に並べた行列を生成します。
...self と matrices を横に並べた行列を生成します。
Matrix.hstack(self, *matrices) と同じです。
//emlist[例][ruby]{
require 'matrix'
x = Matrix[[1, 2], [3, 4]]
y = Matrix[[5, 6], [7, 8]]
x.hstack(y) # => Matrix[[1, 2, 5, 6], [3, 4, 7, 8]]
//}
@param matrices 並べる行列。......すべての行列の行数がselfの行数と一致していなければならない
@raise ExceptionForMatrix::ErrDimensionMismatch 行数の異なる行列がある場合に発生します
@see Matrix.hstack, Matrix#vstack... -
Matrix
# vstack -> Matrix (43.0) -
行列 self と matrices を縦に並べた行列を生成します。
...と matrices を縦に並べた行列を生成します。
Matrix.vstack(self, *matrices) と同じです。
//emlist[例][ruby]{
require 'matrix'
x = Matrix[[1, 2], [3, 4]]
y = Matrix[[5, 6], [7, 8]]
x.vstack(y) # => Matrix[[1, 2], [3, 4], [5, 6], [7, 8]]
//}
@see Matrix.vstack, Matrix#hstack... -
Matrix
. combine(*matrices) -> Enumerator (43.0) -
要素ごとにブロックを呼び出した結果を組み合わせた Matrix を返します。
...ごとにブロックを呼び出した結果を組み合わせた Matrix を返します。
//emlist[例][ruby]{
require 'matrix'
x = Matrix[[6, 6], [4, 4]]
y = Matrix[[1, 2], [3, 4]]
Matrix.combine(x, y) {|a, b| a - b} # => Matrix[[5, 4], [1, 0]]
//}
@param matrices 並べる行列。すべて......の行列の行数と列数が一致していなければならない
@raise ExceptionForMatrix::ErrDimensionMismatch 行や列の要素数が一致しない時に発生します
@see Matrix#combine... -
Matrix
. combine(*matrices) {|*elements| . . . } -> Matrix (43.0) -
要素ごとにブロックを呼び出した結果を組み合わせた Matrix を返します。
...ごとにブロックを呼び出した結果を組み合わせた Matrix を返します。
//emlist[例][ruby]{
require 'matrix'
x = Matrix[[6, 6], [4, 4]]
y = Matrix[[1, 2], [3, 4]]
Matrix.combine(x, y) {|a, b| a - b} # => Matrix[[5, 4], [1, 0]]
//}
@param matrices 並べる行列。すべて......の行列の行数と列数が一致していなければならない
@raise ExceptionForMatrix::ErrDimensionMismatch 行や列の要素数が一致しない時に発生します
@see Matrix#combine... -
Matrix
. hstack(*matrices) -> Matrix (43.0) -
行列 matrices を横に並べた行列を生成します。
...[例][ruby]{
require 'matrix'
x = Matrix[[1, 2], [3, 4]]
y = Matrix[[5, 6], [7, 8]]
Matrix.hstack(x, y) # => Matrix[[1, 2, 5, 6], [3, 4, 7, 8]]
//}
@param matrices 並べる行列。すべての行列の行数が一致していなければならない
@raise ExceptionForMatrix::ErrDimensionMismatch......行数の異なる行列がある場合に発生します
@see Matrix.vstack, Matrix#hstack... -
Matrix
. vstack(*matrices) -> Matrix (43.0) -
行列 matrices を縦に並べた行列を生成します。
...][ruby]{
require 'matrix'
x = Matrix[[1, 2], [3, 4]]
y = Matrix[[5, 6], [7, 8]]
Matrix.vstack(x, y) # => Matrix[[1, 2], [3, 4], [5, 6], [7, 8]]
//}
@param matrices 並べる行列。すべての行列の列数が一致していなければならない
@raise ExceptionForMatrix::ErrDimensionMismatch......列数の異なる行列がある場合に発生します
@see Matrix.hstack, Matrix#vstack... -
Vector
# each2(v) -> Enumerator (10.0) -
ベクトルの各要素と、それに対応するインデックスを持つ引数 v の要素との組に対して (2引数の) ブロックを繰返し評価します。
...ロックを省略した場合は Enumerator を返します。
@param v 各要素と組を取るためのオブジェクト
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。
@see Array...