s = svds(A)
s = svds(A, k)
s = svds(A, k, which)
[U, S, V] = svds(...)
| Paramètre | Description |
|---|---|
| A | une matrice creuse double, single, double complexe ou single complexe. |
| k | un entier positif strictement inferieur a la plus petite dimension de la matrice. La valeur par defaut est 6. |
| which | une chaine : 'largest' ou 'lm' pour les plus grandes valeurs singulieres, 'smallest' ou 'sm' pour les plus petites valeurs singulieres. |
| Paramètre | Description |
|---|---|
| s | valeurs singulieres selectionnees retournees dans un vecteur colonne dense par ordre decroissant. |
| U | matrice dense dont les colonnes sont les vecteurs singuliers gauches selectionnes. |
| S | matrice diagonale dense contenant les valeurs singulieres selectionnees. |
| V | matrice dense dont les colonnes sont les vecteurs singuliers droits selectionnes. |
svds calcule des valeurs singulieres selectionnees et, optionnellement, les vecteurs singuliers correspondants d'une matrice creuse flottante.
Pour une matrice A, les facteurs retournes verifient :
$$A V = U S$$Les matrices hautes utilisent le plus petit probleme normal possible, et les matrices larges utilisent le probleme normal transpose correspondant.
Lorsque le backend optionnel ARPACK n'est pas disponible, svds utilise un fallback dense pour les petites matrices creuses. Les matrices creuses plus grandes necessitent toujours ARPACK afin d'eviter une utilisation memoire excessive.
Les entrees sparse single et sparse single complexes sont acceptees. Le probleme de valeurs singulieres selectionne est calcule par le backend sparse en double precision, puis les sorties denses sont reconverties en single ou single complexe lorsque cela s'applique.
A = sparse([1 0 0; 0 2 0; 3 0 0; 0 4 0; 0 0 5]);
s = svds(A, 2)
[U, S, V] = svds(A, 2, 'smallest')
A = sparse([1 + 1i 0 0; 0 2i 0; 3 0 0; 0 4 0; 0 0 5i]);
s = svds(A, 2)
A = sparse(single([1 + 1i 0 0; 0 2i 0; 3 0 0; 0 4 0; 0 0 5i]));
s = svds(A, 2)
| Version | Description |
|---|---|
| 2.0.0 | fallback dense ajoute pour les petites matrices creuses lorsque ARPACK n'est pas disponible. |
| 2.0.0 | entrees sparse single et sparse single complexes prises en charge via le backend sparse en double precision. |