Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português -

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Linear Algebra > svd

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,0) は "エコノミーサイズ"分解を出力する. 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 (複素数の場合)に基づいている.

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Mar 03 11:00:51 CET 2011