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


svd

特異値分解

呼び出し手順

s=svd(X)

[U,S,V]=svd(X)

[U,S,V]=svd(X,0) (obsolete)

[U,S,V]=svd(X,"e")

[U,S,V,rk]=svd(X [,tol])

引数

X

実数または複素行列

s

実数ベクトル (特異値)

S

実数対角行列 (特異値)

U,V

直交またはユニタリ正方行列(特異値).

tol

実数

説明

[U,S,V] = svd(X)X と同次元で 降順に非負の対角要素を有する 対角行列 Sおよび X = U*S*V'となる ユニタリ行列 UV を出力します.

[U,S,V] = svd(X,"e") は "エコノミーサイズ"分解を出力します. X がm行n列 (m > n)の場合, U の最初のn列のみが計算され, Sは n行n列となります.

s= svd(X) は 特異値を含むベクトルsを返します.

[U,S,V,rk]=svd(X,tol)rkに加えて, X の数値ランク,すなわち tolより大きな特異値の数を出力します.

tolのデフォルト値は rankと同じです.

X=rand(4,2)*rand(2,4)
svd(X)
sqrt(spec(X*X'))

使用される関数

svd 分解はLapackのルーチン DGESVD (実数行列の場合)および ZGESVD (複素数の場合)に基づいている.

History

バージョン記述
2023.0.0

svd(X, 0) is obsolete, use svd(X, "e") instead.

Report an issue
<< sva Eigenvalue and Singular Value Factorization >>

Copyright (c) 2022-2023 (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:
Tue Mar 07 09:28:43 CET 2023