Nom

svd — décomposition en valeurs singulières

Séquence d'appel

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])

Paramètres

X

matrice réelle ou complexe

s

vecteur réel (valeurs singulières)

S

matrice réelle diagonale (valeurs singulières sur la diagonale)

U,V

matrices carrées unitaires (vecteurs singuliers).

tol

nombre réel positif

Description

[U,S,V]=svd(X) renvoie une matrice diagonale S, de même dimension que X avec des éléments diagonaux positifs classés par ordre décroissant, ainsi que deux matrices unitaires U et V telles que X = U*S*V'.[U,S,V]=svd(X,"e") renvoie la décomposition réduite : si X est une matrice m x n et que m > n alors seulement les n premières colonnes de U sont calculées et S est n x n .

s=svd(X) renvoie un vecteur s contenant les valeurs singulières.

[U,S,V,rk]=svd(X [,tol]) renvoie de plus rk, le rang "numérique" de X c'est à dire le nombre de valeurs singulières plus grandes que tol.

La valeur par défaut de tol est la même que pour la fonction rank.

Exemples

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

Voir Aussi

rank , qr , colcomp , rowcomp , sva , spec

Fonctions Utilisées

la décomposition svd est basée sur les routines DGESVD pour les matrices réelles et ZGESVD pour le cas complexe.