Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
spec
valeurs propres, et vecteurs propres d'une matrice ou d'un faisceau de matrices
Séquence d'appel
evals = spec(A) [R, diagevals] = spec(A) evals = spec(A, B) [alpha, beta] = spec(A, B) [alpha, beta, Z] = spec(A, B) [alpha, beta, Q, Z] = spec(A, B)
Paramètres
- A, B
- Matrices carrées réelles ou complexes, de mêmes tailles.
- evals
- Vecteur réel ou complexe
- diagevals
- Matrice carrée diagonale réelle ou complexe : les éléments diagonaux sont les valeurs propres.
- R
- Matrice carrée inversible réelle ou complexe des vecteurs propres à droite.
- alpha, beta
- Vecteurs de mêmes tailles: valeurs propres généralisées du faisceau
de matrices
A - s.B
. alpha./beta donne les valeurs propres.alpha
est à valeurs réelles ou complexes.beta
est à valeurs réelles. - Q
- Matrice carrée inversible réelle ou complexe des vecteurs propres généralisés à gauche.
- Z
- Matrice carrée inversible réelle ou complexe des vecteurs propres généralisés à droite.
Description
evals = spec(A) calcule les valeurs propres de
A
et les fournit dans le vecteur evals
.
[R, diagevals] = spec(A) fournit les valeurs propres
sur la diagonale de la matrice diagonale diagevals
.
La matrice R
produite contient les vecteurs propres à droite
(s'ils existent). Voir Aussi bdiag(…)
.
Lorsque spec(A)
est utilisée pour une seule matrice,
le caractère réel ou complexe des résultats est le suivant :
matrice A | Réelle | Complexe | ||
---|---|---|---|---|
Symétrique | Asymétrique | Hermitienne | Non hermitienne | |
Valeurs propres | réelles | complexes | réelles | complexes |
Vecteurs propres | réels | complexes | complexes | complexes |
Une matrice complexe hermitienne est égale à sa transposée conjuguée.
Faisceau matriciel A - s.B
evals = spec(A, B) retourne le spectre du faisceau
A - s.B
, c'est à dire les racines du déterminant de la matrice de
polynômes A - s.B
.
[alpha, beta] = spec(A, B)
retourne les valeurs propres généralisées alpha
et
beta
du faisceau, telles que alpha./beta
sont les valeurs propres usuelles, c'est à dire les racines du déterminant de
la matrice de polynômes s E - A
.
La matrice A - alpha./beta × B
est alors singulière.
Si beta(i) = 0
, la ième
valeur propre est infinie.
Pour B = eye(A)
, alpha./beta
est
égal à spec(A)
.
[alpha, beta, Z] = spec(A, B)
produit en outre la matrice Z
des vecteurs propres
généralisés à droite.
[alpha, beta, Q, Z] = spec(A, B)
permet finalement d'obtenir la matrice Q
des vecteurs
propres généralisés à gauche.
Pour les matrices denses ou creuses de grande taille, la fonction
eigs peut être utilisée. |
Fonctions utilisées
Le calcul des valeurs propres des matrices est basé sur les programmes Lapack
DGEEV and ZGEEV, lorsque la matrice A n'est ni symétrique ni hermitienne.
DSYEV and ZHEEV, lorsque la matrice A est symétrique ou hermitienne.
Le calcul des valeurs propres des faisceaux est basé sur les programmes Lapack routines DGGEV et ZGGEV.
Exemples
// Valeurs propres d'une matrice A = diag([1,2,3]); X = rand(3,3); A = inv(X)*A*X; spec(A) x = poly(0,'x'); pol = det(x*eye(3,3)-A) roots(pol) [S,X] = bdiag(A); clean(inv(X)*A*X) // Valeurs et vecteurs propres d'un faisceau de matrices A = rand(3,3); [al, be, Z] = spec(A,eye(A));al./be clean(inv(Z)*A*Z) // affiche les valeurs propres (matrice générique) A = A+%i*rand(A); E = rand(A); roots(det(%s*E-A)) // cas à valeurs propres complexes
Voir aussi
- eigs — calculates largest eigenvalues and eigenvectors of matrices
- bdiag — bloc-diagonalisation, vecteurs propres généralisés
- schur — [ordered] Schur decomposition of matrix and pencils
- colcomp — compression de colonnes, noyau
- det — déterminant
- poly — définition d'un polynôme selon racines ou coefficients, ou caractéristique d'une matrice carrée
Report an issue | ||
<< psmall | Eigenvalue and Singular Value | sva >> |