Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2024.1.0 - 日本語


diag

対角行列の構築または展開

呼び出し手順

y = diag(vm)
y = diag(vm, k)

引数

vm

ベクトルまたは行列 (完全または疎行列)

k

整数 (デフォルト値 0)

y

ベクトルまたは行列

説明

n次(行または列) ベクトルvm に関して, diag(vm)vmのエントリを 主対角項とする対角行列を返します.

diag(vm,k) は,vmの エントリを k番目の対角項とする (n+abs(k))x(n+abs(k))行列を返します. k=0は主対角, k>0 は上方対角, k<0 は下方対角です.

vmが行列の場合, diag(vm,k)vmの k番目の対角項のエントリからなる 列ベクトルとなります. diag(vm)vmの主対角項です. diag(diag(x)) は対角行列です.

vm が疎行列の場合, diag(vm,k) は疎行列を返します.

対角線形システムを構築するには, blockdiagを使用してください.

eye(A).*AAの対角エントリからなる対角行列を 返すことに注意してください. これは,任意の行列(定数,多項式,有理数,状態空間線形システム,...) で有効です.

diag([1,2])

A=[1,2;3,4];
diag(A)  // main diagonal
diag(A,1)

diag(sparse(1:10))  // sparse diagonal matrix

// form a tridiagonal matrix of size 2*m+1
m=5;diag(-m:m) +  diag(ones(2*m,1),1) +diag(ones(2*m,1),-1)

参照

  • toeplitz — Toeplitz matrix (chosen constant diagonal bands)
  • eye — 単位行列
  • blockdiag — Creates a block diagonal matrix from provided arrays. Block diagonal system connection.
  • spec — 行列とペンシルの固有値
  • bdiag — ブロック対角化, 一般化固有ベクトル
Report an issue
<< blockdiag elementarymatrices empty [] >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Jun 17 17:54:17 CEST 2024