Ruby 2.6.0 リファレンスマニュアル > ライブラリ一覧 > matrixライブラリ > Matrixクラス > diagonal

singleton method Matrix.diagonal

diagonal(*values) -> Matrix[permalink][rdoc]

対角要素がvaluesで、非対角要素が全て0であるような 正方行列を生成します。

[PARAM] values:
行列の対角要素

注意

valuesに一次元Arrayを1個指定すると、そのArrayを唯一の要素とした1×1の行列が生成されます。



require 'matrix'

m = Matrix.diagonal(1, 2, 3)
p m # => Matrix[[1, 0, 0], [0, 2, 0], [0, 0, 3]]
a = [1,2,3]
m = Matrix.diagonal(a)
p m # => Matrix[[[1, 2, 3]]]