Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Autovalori e SVD 1 / 87
Definizione
Data una matrice A ∈ Rn,n , un numero λ (reale o complesso), si dice
autovalore di A se esiste un vettore non nullo x (reale o complesso)
soluzione del sistema omogeneo
Ax = λx
Autovalori e SVD 2 / 87
Definizione
Data una matrice A ∈ Rn,n , un numero λ (reale o complesso), si dice
autovalore di A se esiste un vettore non nullo x (reale o complesso)
soluzione del sistema omogeneo
Ax = λx
Autovalori e SVD 2 / 87
Definizione
Data una matrice A ∈ Rn,n , un numero λ (reale o complesso), si dice
autovalore di A se esiste un vettore non nullo x (reale o complesso)
soluzione del sistema omogeneo
Ax = λx
Autovalori e SVD 2 / 87
Pertanto, gli autovalori di A coincidono con le n radici dell’equazione
caratteristica (algebrica di grado n):
det(A − λI) = 0
Autovalori e SVD 3 / 87
Pertanto, gli autovalori di A coincidono con le n radici dell’equazione
caratteristica (algebrica di grado n):
det(A − λI) = 0
Autovalori e SVD 3 / 87
Pertanto, gli autovalori di A coincidono con le n radici dell’equazione
caratteristica (algebrica di grado n):
det(A − λI) = 0
Autovalori e SVD 3 / 87
Dalla definizione di autovalore-autovettore si deducono immediatamente le
seguenti proprietà.
Proprietà
Se λ1 , λ2 , . . . , λn sono gli autovalori di una matrice A, con
corrispondenti autovettori x1 , x2 , . . . , xn , λk1 , λk2 , . . . , λkn rappresentano
gli n autovalori di Ak . Inoltre, gli autovettori di A sono anche
autovettori di Ak .
Autovalori e SVD 4 / 87
Dalla definizione di autovalore-autovettore si deducono immediatamente le
seguenti proprietà.
Proprietà
Se λ1 , λ2 , . . . , λn sono gli autovalori di una matrice A, con
corrispondenti autovettori x1 , x2 , . . . , xn , λk1 , λk2 , . . . , λkn rappresentano
gli n autovalori di Ak . Inoltre, gli autovettori di A sono anche
autovettori di Ak .
Se λ1 , λ2 , . . . , λn sono gli autovalori di una matrice invertibile A, con
corrispondenti autovettori x1 , x2 , . . . , xn , λ−1 −1 −1
1 , λ2 , . . . , λn
−1
rappresentano gli n autovalori di A . Inoltre, gli autovettori di A
sono anche autovettori di A−1 .
Autovalori e SVD 4 / 87
La definizione di autovalore-autovettore
Axi = λi xi , i = 1, . . . , n
ovvero
AX = XD
con
λ1 0
λ2
X = (x1 , x2 , . . . , xn ), D=
..
.
0 λn
Autovalori e SVD 5 / 87
I seguenti comandi Matlab consentono di calcolare gli autovalori e gli
autovettori ad essi associati di una matrice A.
Comandi Matlab
d = eig(A) restituisce il vettore d contenente tutti gli autovalori di A.
Autovalori e SVD 6 / 87
I seguenti comandi Matlab consentono di calcolare gli autovalori e gli
autovettori ad essi associati di una matrice A.
Comandi Matlab
d = eig(A) restituisce il vettore d contenente tutti gli autovalori di A.
[X,D] = eig(A) restituisce la matrice diagonale D i cui elementi
sono gli autovalori di A e la matrice X i cui vettori colonna sono i
corrispondenti autovettori (cioè l’i-esimo vettore colonna X(:,i) è un
autovettore associato all’autovalore D(i,i)).
Autovalori e SVD 6 / 87
Definizione
Data una matrice A di ordine n e un vettore non nullo x di dimensione n,
si definisce quoziente di Rayleigh il numero
xH Ax
rA (x) =
xH x
ove xH denota il vettore trasposto coniugato di x, ovvero il vettore i cui
elementi sono i coniugati x̄j degli elementi xj , j = 1, . . . , n. Se gli elementi
di x sono tutti reali, allora xH = xT .
Autovalori e SVD 7 / 87
Definizione
Data una matrice A di ordine n e un vettore non nullo x di dimensione n,
si definisce quoziente di Rayleigh il numero
xH Ax
rA (x) =
xH x
ove xH denota il vettore trasposto coniugato di x, ovvero il vettore i cui
elementi sono i coniugati x̄j degli elementi xj , j = 1, . . . , n. Se gli elementi
di x sono tutti reali, allora xH = xT .
Autovalori e SVD 7 / 87
Definizione
Data una matrice A di ordine n e un vettore non nullo x di dimensione n,
si definisce quoziente di Rayleigh il numero
xH Ax
rA (x) =
xH x
ove xH denota il vettore trasposto coniugato di x, ovvero il vettore i cui
elementi sono i coniugati x̄j degli elementi xj , j = 1, . . . , n. Se gli elementi
di x sono tutti reali, allora xH = xT .
Autovalori e SVD 7 / 87
Utilizzando l’espressione del quoziente di Rayleigh e la definizione di
matrice simmetrica e definita positiva, si dimostra immediatamente la
seguente proprietà.
Proprietà
Una matrice simmetrica A di ordine n è definita positiva se, e solo se, i
suoi autovalori sono tutti positivi.
Autovalori e SVD 8 / 87
Definizione
Si definisce raggio spettrale della matrice A di ordine n il modulo
dell’autovalore di massimo modulo, cioè
Autovalori e SVD 9 / 87
Definizione
Si definisce raggio spettrale della matrice A di ordine n il modulo
dell’autovalore di massimo modulo, cioè
Autovalori e SVD 9 / 87
Definizione
Si definisce norma 2 o norma spettrale di A ∈ Rm,n il numero reale
positivo: q
||A||2 = ρ(AT A)
Autovalori e SVD 10 / 87
Definizione
Si definisce norma 2 o norma spettrale di A ∈ Rm,n il numero reale
positivo: q
||A||2 = ρ(AT A)
Osservazione
q
ρ(A2 ) = ρ(A)2 = ρ(A)
p
Se A ∈ Rn,n è simmetrica, allora ||A||2 =
Autovalori e SVD 10 / 87
Definizione
Si definisce norma 2 o norma spettrale di A ∈ Rm,n il numero reale
positivo: q
||A||2 = ρ(AT A)
Osservazione
q
ρ(A2 ) = ρ(A)2 = ρ(A)
p
Se A ∈ Rn,n è simmetrica, allora ||A||2 =
Comando Matlab
norm(A,2) oppure norm(A) restituisce la norma spettrale della matrice A.
Autovalori e SVD 10 / 87
Nell’applicazione di alcuni metodi numerici è necessario localizzare in
modo (più o meno accurato) gli autovalori di A nel piano complesso. A
tale scopo si introducono le seguenti definizioni.
Definizione
Si definisce i-esimo cerchio riga di Gershgorin associato alla i-esima riga
di A l’insieme
n
(r )
X
Ci = z ∈ C : |z − aii | ≤ |aij | , i = 1, . . . , n
j=1,j6=i
Autovalori e SVD 11 / 87
Teorema
n
(r )
[
Tutti gli autovalori di A appartengono a R = Ci .
i=1
Autovalori e SVD 12 / 87
Teorema
n
(r )
[
Tutti gli autovalori di A appartengono a R = Ci .
i=1
n
(c)
[
Tutti gli autovalori di A appartengono a C = Cj .
j=1
Autovalori e SVD 12 / 87
Teorema
n
(r )
[
Tutti gli autovalori di A appartengono a R = Ci .
i=1
n
(c)
[
Tutti gli autovalori di A appartengono a C = Cj .
j=1
Esempio
A sinistra i cerchi riga di Gershgorin e a destra i cerchi colonna per la
matrice: A=[30 1 2 3; 4 15 -4 -2; -1 0 3 5; -3 5 0 1];
Cerchi riga di Gershgorin e autovalori di una matrice Cerchi colonna di Gershgorin e autovalori di una matrice
15
15
10
10
5 5
0 0
−5 −5
−10
−10
−15
−15
−5 0 5 10 15 20 25 30 35 −5 0 5 10 15 20 25 30 35
Autovalori e SVD 12 / 87
Teorema
Tutti gli autovalori di A appartengono alla regione del piano complesso
individuata dall’intersezione delle regioni R e C.
Autovalori e SVD 13 / 87
Teorema
Tutti gli autovalori di A appartengono alla regione del piano complesso
individuata dall’intersezione delle regioni R e C.
Esempio
La regione in rosso punteggiata in nero rappresenta l’intersezione
dell’unione dei cerchi riga con l’unione dei cerchi colonna associata alla
matrice del precedente esempio. I circoletti verdi rappresentano gli effettivi
autovalori.
Intersezione cerchi riga e colonna di Gershgorin e autovalori di una matrice
15
10
−5
−10
−15
−5 0 5 10 15 20 25 30 35
Autovalori e SVD 13 / 87
Teorema
Denotate con R1 l’unione di k cerchi riga e con R2 l’unione dei
rimanenti cerchi (riga), se risulta R1 ∩ R2 = ∅, allora esattamente k
autovalori appartengono a R1 e i restanti n − k appartengono a R2 .
Autovalori e SVD 14 / 87
Teorema
Denotate con R1 l’unione di k cerchi riga e con R2 l’unione dei
rimanenti cerchi (riga), se risulta R1 ∩ R2 = ∅, allora esattamente k
autovalori appartengono a R1 e i restanti n − k appartengono a R2 .
Denotate con C1 l’unione di k cerchi colonna e con C2 l’unione dei
rimanenti cerchi (colonna), se risulta C1 ∩ C2 = ∅, allora esattamente
k autovalori appartengono a C1 e i restanti n − k appartengono a C2 .
Esempio
(c)
Per la matrice del precedente esempio, se poniamo C1 = C1 e
4
(c)
[
C2 = Cj , abbiamo C1 ∩ C2 = ∅, e quindi un autovalore appartiene a
j=2
C1 e i restanti tre appartengono a C2 .
Autovalori e SVD 14 / 87
Definizione
Due matrici A e B di ordine n si dicono simili se esiste una matrice S, di
ordine n e non singolare, tale che
S−1 AS = B
Autovalori e SVD 15 / 87
Teorema
Due matrici simili A e B hanno gli stessi autovalori.
Dimostrazione
Siano λ un autovalore di A, x un autovettore a esso corrispondente e
B = S−1 AS. Allora si ha
⇒ Bz = λz con z = S−1 x
Quindi λ è anche autovalore di B con autovettore z.
Autovalori e SVD 16 / 87
Definizione
Una matrice A con autovalori λi , i = 1, . . . , n, si dice diagonalizzabile se
è simile alla matrice diagonale D = diag(λ1 , λ2 , ..., λn ), ovvero se esiste
una matrice di ordine n e non singolare S tale che
Autovalori e SVD 17 / 87
Definizione
Una matrice A con autovalori λi , i = 1, . . . , n, si dice diagonalizzabile se
è simile alla matrice diagonale D = diag(λ1 , λ2 , ..., λn ), ovvero se esiste
una matrice di ordine n e non singolare S tale che
Osservazione
Se A è diagonalizzabile e S−1 AS = D, allora si ha
AS = SD
Autovalori e SVD 17 / 87
Una matrice diagonalizzabile può essere caratterizzata mediante i suoi
autovettori.
Teorema
Una matrice A di ordine n è diagonalizzabile se, e solo se, A possiede n
autovettori linearmente indipendenti.
Teorema
Una matrice è diagonalizzabile se i suoi autovalori sono distinti.
Autovalori e SVD 18 / 87
Esempio
Una matrice reale e simmetrica A di ordine n ammette n autovettori
ortogonali tra loro (quindi linearmente indipendenti) e, pertanto, è
diagonalizzabile. In particolare, per essa esiste una matrice ortogonale V
(per la quale V−1 = VT ) tale che
VT AV = D = diag(λ1 , λ2 , ..., λn )
Autovalori e SVD 19 / 87
Condizionamento del calcolo degli autovalori
Autovalori e SVD 20 / 87
Esempio
Sia
101 −90
A=
110 −98
Gli autovalori di A sono λ1 = 2 e λ2 = 1.
Autovalori e SVD 21 / 87
Esempio
Sia
101 −90
A=
110 −98
Gli autovalori di A sono λ1 = 2 e λ2 = 1.
Denotiamo con
101 − ε −90 − ε
à =
110 −98
una perturbazione della matrice A.
Autovalori e SVD 21 / 87
Esempio
Sia
101 −90
A=
110 −98
Gli autovalori di A sono λ1 = 2 e λ2 = 1.
Denotiamo con
101 − ε −90 − ε
à =
110 −98
una perturbazione della matrice A.
Per ε = 0.001, gli autovalori di à sono λ̃1 ≈ 1.701 e λ̃2 ≈ 1.298.
Autovalori e SVD 21 / 87
Esempio
Sia
101 −90
A=
110 −98
Gli autovalori di A sono λ1 = 2 e λ2 = 1.
Denotiamo con
101 − ε −90 − ε
à =
110 −98
una perturbazione della matrice A.
Per ε = 0.001, gli autovalori di à sono λ̃1 ≈ 1.701 e λ̃2 ≈ 1.298.
Si osservi che ||A − Ã||2 ≈ 0.001, mentre |λ1 − λ̃1 |,|λ2 − λ̃2 | ≈ 0.3.
Pertanto, a una perturbazione assoluta pari allo 0.1% sugli elementi della
matrice è corrisposta una variazione del 30% sugli autovalori.
Autovalori e SVD 21 / 87
Una misura del condizionamento del calcolo degli autovalori, nel caso di
matrici diagonalizzabili, è fornita dal seguente teorema.
Teorema (Bauer-Fike)
Sia A una matrice diagonalizzabile e sia S invertibile tale che
S−1 AS = D con D = diag(λ1 , λ2 , ..., λn ). Sia A
e una perturbazione della
matrice A e sia λ
e un autovalore di A.
e Allora
min |λ
e − λi | ≤ K (S)||A − A||
e
1≤i≤n
dove K (S) = ||S|| ||S−1 || e || · || indica una qualsiasi delle norme di matrice
|| · ||p , con p = 1, 2, ∞.
Autovalori e SVD 22 / 87
Il numero K (S) può essere assunto come numero di condizionamento del
problema degli autovalori di una matrice diagonalizzabile A:
se K (S) ≈ 1 il problema è ben condizionato, altrimenti il problema può
essere mal condizionato.
Esempio
Per l’esempio precedente, tenendo conto che gli autovalori di A sono
distinti e quindi A è diagonalizzabile, si ha
>> A = [101 -90; 110 -98];
>> [S,D] = eig(A);
>> condizionamento = cond(S)
condizionamento =
4.0000e+02
Autovalori e SVD 23 / 87
Osservazioni
Se A è simmetrica, allora A è diagonalizzabile con S ortogonale e
q q
K2 (S) = ||S||2 ||ST ||2 = ρ(ST S) ρ(SST ) = 1
Autovalori e SVD 24 / 87
... continua osservazioni
Il condizionamento del problema del calcolo degli autovalori per una
matrice diagonalizzabile A non dipende dal numero di
condizionamento K (A) della matrice A, ma dal numero di
condizionamento K (S) della matrice S degli autovettori.
Autovalori e SVD 25 / 87
... continua osservazioni
Il condizionamento del problema del calcolo degli autovalori per una
matrice diagonalizzabile A non dipende dal numero di
condizionamento K (A) della matrice A, ma dal numero di
condizionamento K (S) della matrice S degli autovettori.
Il calcolo degli autovalori di una matrice mal condizionata non è
necessariamente un problema mal condizionato; per esempio, la
matrice di Hilbert Hn ha un numero di condizionamento K (Hn )
grande per n grande ma, essendo simmetrica, è ben condizionata per
quanto riguarda il calcolo degli autovalori.
Autovalori e SVD 25 / 87
Il seguente comando Matlab consente di calcolare il numero di
condizionamento di ciascun autovalore.
Autovalori e SVD 26 / 87
Il seguente comando Matlab consente di calcolare il numero di
condizionamento di ciascun autovalore.
Comando Matlab
c = condeig(A) restituisce il vettore c contenente i numeri di
condizionamento di ciascun autovalore della matrice A. Se c(i),
i = 1, . . . , n, è circa 1, allora il calcolo di λi è ben condizionato, altrimenti
può essere mal condizionato.
Autovalori e SVD 26 / 87
Esempio 1
Calcoliamo gli autovalori della matrice
A=[1 2 -2; 1 1 1; 2 2 1]
A=[1 2 -2; 2 1 1; -2 2 1]
Autovalori e SVD 28 / 87
Metodi numerici
Autovalori e SVD 29 / 87
Metodi per l’approssimazione di un autovalore
Autovalori e SVD 30 / 87
Si denotino con x1 , x2 , . . . , xn , n autovettori corrispondenti agli autovalori
λ1 , λ2 , . . . , λn , rispettivamente. Essendo A diagonalizzabile, i vettori xk
sono linearmente indipendenti e, pertanto, ogni vettore z ∈ Rn si
rappresenta come
z = α1 x1 + α2 x2 + ... + αn xn
per opportuni coefficienti αk .
Moltiplicando ambo i membri a sinistra per la matrice A, si ha
Autovalori e SVD 31 / 87
Iterando la procedura, dopo m moltiplicazioni1 per A, si ottiene
z(m) := Am z = α1 λm m m
1 x1 + α2 λ2 x2 + ... + αn λn xn
z(m)
w(m) =
||z(m) ||2
z(m+1) = Aw(m)
Autovalori e SVD 33 / 87
Per quanto riguarda l’approssimazione dell’autovalore λ1 , si osservi che se
w(m) approssima un autovettore x1 relativo all’autovalore λ1 , allora
Aw(m) ≈ λ1 w(m)
e
(w(m) )T Aw(m) ≈ λ1 (w(m) )T w(m)
Autovalori e SVD 34 / 87
Di seguito l’algoritmo che implementa il metodo delle potenze.
Function Matlab
function [lambda_max,w,m] = potenze(A,z,tol,m_max)
w = z/norm(z);
lambda = 0;
for m = 1:m_max
z = A*w;
lambda_max = w’*z ;
w = z/norm(z);
if abs(lambda_max-lambda) <= tol*abs(lambda_max)
break
end
lambda = lambda_max;
end
Autovalori e SVD 35 / 87
Osservazioni
L’ipotesi che il vettore iniziale z(0) abbia componente non nulla
rispetto all’autovettore x1 (cioè l’ipotesi α1 6= 0) non è restrittiva
nella pratica perché, grazie questa volta agli errori di arrotondamento,
dopo poche iterazioni compare una componente nella direzione di x1 ,
anche se questa non era presente nel vettore iniziale z(0) .
Autovalori e SVD 36 / 87
Osservazioni
L’ipotesi che il vettore iniziale z(0) abbia componente non nulla
rispetto all’autovettore x1 (cioè l’ipotesi α1 6= 0) non è restrittiva
nella pratica perché, grazie questa volta agli errori di arrotondamento,
dopo poche iterazioni compare una componente nella direzione di x1 ,
anche se questa non era presente nel vettore iniziale z(0) .
Se λ1 = λ2 = ... = λk e |λ1 | > |λk+1 | ≥ ... ≥ |λn | il metodo delle
potenze converge (lentamente) ancora a λ1 e a un autovettore ad
esso associato.
Autovalori e SVD 36 / 87
... continua osservazioni
Se λ1 = −λ2 , cioè se esistono due autovalori distinti di ugual modulo
massimo, allora in generale il metodo delle potenze non converge.
Autovalori e SVD 37 / 87
... continua osservazioni
Se λ1 = −λ2 , cioè se esistono due autovalori distinti di ugual modulo
massimo, allora in generale il metodo delle potenze non converge.
Se λ1 e λ2 sono complessi e coniugati, cioè se esistono due autovalori
complessi distinti di ugual modulo massimo, allora il metodo delle
potenze non converge perché, cosı̀ come è stato formulato, non può
convergere ad autovettori e autovalori complessi.
Autovalori e SVD 37 / 87
... continua osservazioni
(m)
Per una generica matrice A, la velocità
m di convergenza di λ1 a λ1
λ2
per m → ∞ è pari a quella con cui λ1 → 0 per m → ∞.
Si può dimostrare che per una matrice simmetrica A la convergenza è
più rapida perchè dipende dal quadrato del suddetto rapporto, ossia la
(m)
velocità di convergenza di λ1 a λ1 per m → ∞ è pari a quella con
2m
cui λλ21 → 0 per m → ∞.
(m)
Se |λ2 | ≈ |λ1 | la convergenza della successione λ1 a λ1 può risultare
eccessivamente lenta. In questa situazione il metodo viene utilizzato
solo per una stima iniziale, da migliorare successivamente con un
metodo più veloce (per esempio, il metodo delle potenze inverse).
Autovalori e SVD 38 / 87
Metodo delle potenze inverse
Una variante del metodo delle potenze, detta metodo delle potenze
inverse, consente di approssimare un qualunque autovalore λ di A purché
se ne conosca un’approssimazione p.
Infatti, osservando che da Ax = λx segue
(A − pI)x = Ax − px = (λ − p)x
Autovalori e SVD 39 / 87
Metodo delle potenze inverse
Una variante del metodo delle potenze, detta metodo delle potenze
inverse, consente di approssimare un qualunque autovalore λ di A purché
se ne conosca un’approssimazione p.
Infatti, osservando che da Ax = λx segue
(A − pI)x = Ax − px = (λ − p)x
Autovalori e SVD 39 / 87
Se allora p è sufficientemente vicino (rispetto agli altri autovalori)
1
all’autovalore λ di A, il numero µ = λ−p è l’autovalore di modulo
massimo di (A − pI) . −1
Autovalori e SVD 40 / 87
Se allora p è sufficientemente vicino (rispetto agli altri autovalori)
1
all’autovalore λ di A, il numero µ = λ−p è l’autovalore di modulo
massimo di (A − pI) . −1
Autovalori e SVD 40 / 87
Osservazione
Nell’algoritmo che implementa il metodo delle potenze occorrerebbe allora
sostituire A con (A − pI)−1 ma, tenendo conto che
Autovalori e SVD 41 / 87
Di seguito l’algoritmo che implementa il metodo delle potenze inverse.
Function Matlab
function [lambda_p,w,m] = potenze_inverse(A,p,z,tol,m_max)
n = size(A);
w = z/norm(z);
lambda = p;
[L,U,P] = lu(A-p*eye(n));
for m = 1:m_max
y = L\(P*w);
z = U\y;
lambda_p = p+1/(w’*z);
w = z/norm(z);
if abs(lambda_p-lambda) <= tol*abs(lambda_p)
break
end
lambda = lambda_p;
end
Autovalori e SVD 42 / 87
Osservazioni
Se si assume p = 0 il metodo delle potenze inverse permette di
approssimare l’autovalore di minimo modulo di A, nell’ipotesi che
esista un solo autovalore (reale) di modulo minimo.
Autovalori e SVD 43 / 87
Osservazioni
Se si assume p = 0 il metodo delle potenze inverse permette di
approssimare l’autovalore di minimo modulo di A, nell’ipotesi che
esista un solo autovalore (reale) di modulo minimo.
Un’approssimazione di p può essere ottenuta mediante i cerchi di
Gershgorin.
Autovalori e SVD 43 / 87
Osservazioni
Se si assume p = 0 il metodo delle potenze inverse permette di
approssimare l’autovalore di minimo modulo di A, nell’ipotesi che
esista un solo autovalore (reale) di modulo minimo.
Un’approssimazione di p può essere ottenuta mediante i cerchi di
Gershgorin.
Il valore di p potrebbe essere modificato nel corso delle iterazioni,
ponendo p = λ(m+1) . Ciò comporta una diminuzione del numero di
iterazioni necessarie per soddisfare il test d’arresto, ma anche un
considerevole aumento del costo computazionale in quanto la matrice
(A − pI)−1 cambia a ogni passo e non sarà più possibile fattorizzarla
una volta per tutte prima del processo iterativo.
Autovalori e SVD 43 / 87
Assegnata una matrice A, i seguenti comandi Matlab ci consentono di
calcolare solo alcuni suoi autovalori, per esempio quelli più grandi in
modulo oppure quelli più vicini a un dato valore p.
Autovalori e SVD 44 / 87
Assegnata una matrice A, i seguenti comandi Matlab ci consentono di
calcolare solo alcuni suoi autovalori, per esempio quelli più grandi in
modulo oppure quelli più vicini a un dato valore p.
Comandi Matlab
[X,D] = eigs(A,k) restituisce in D e in X rispettivamente, i k
autovalori di A di modulo più grande e i corrispondenti autovettori.
Autovalori e SVD 44 / 87
Assegnata una matrice A, i seguenti comandi Matlab ci consentono di
calcolare solo alcuni suoi autovalori, per esempio quelli più grandi in
modulo oppure quelli più vicini a un dato valore p.
Comandi Matlab
[X,D] = eigs(A,k) restituisce in D e in X rispettivamente, i k
autovalori di A di modulo più grande e i corrispondenti autovettori.
[X,D] = eigs(A,k,p) restituisce in D e in X rispettivamente, i k
autovalori di A più vicini a p e i corrispondenti autovettori.
Autovalori e SVD 44 / 87
Metodi per l’approssimazione di tutti gli autovalori
Metodo QR
Il metodo più efficiente e più usato per il calcolo di tutti gli autovalori, ed
eventualmente autovettori, di una matrice A è il metodo QR, il cui nome
deriva dal fatto che esso di basa sulla fattorizzazione A = QR.
Il metodo verrà descritto solo nella forma più elementare, che non sempre
però garantisce la convergenza agli autovalori di A.
Autovalori e SVD 45 / 87
Nel metodo QR viene generata una successione di matrici nel modo
seguente: posto
A1 := A
per k = 1, 2 . . . si calcola una fattorizzazione QR della matrice Ak ,
A k = Q k Rk
Ak+1 := Rk Qk
Autovalori e SVD 46 / 87
Dalle precedenti relazioni risulta che A2 è simile ad A1 = A
A 2 = R1 Q 1 = Q T
1 Q
T
1 R1 Q1 = Q1 A1 Q1
| {z }
A1
Autovalori e SVD 47 / 87
Dalle precedenti relazioni risulta che A2 è simile ad A1 = A
A 2 = R1 Q 1 = Q T
1 Q
T
1 R1 Q1 = Q1 A1 Q1
| {z }
A1
Autovalori e SVD 47 / 87
Sotto opportune ipotesi, la successione di matrici Ak converge per k → ∞
verso una matrice limite A∞ con le seguenti proprietà:
se la matrice A è simmetrica, allora A∞ è diagonale; gli elementi sulla
diagonale sono gli autovalori di A;
Autovalori e SVD 48 / 87
Sotto opportune ipotesi, la successione di matrici Ak converge per k → ∞
verso una matrice limite A∞ con le seguenti proprietà:
se la matrice A è simmetrica, allora A∞ è diagonale; gli elementi sulla
diagonale sono gli autovalori di A;
se la matrice A non è simmetrica, ma ha autovalori tutti reali, allora
A∞ è triangolare superiore; gli elementi sulla diagonale sono gli
autovalori di A;
Autovalori e SVD 48 / 87
Sotto opportune ipotesi, la successione di matrici Ak converge per k → ∞
verso una matrice limite A∞ con le seguenti proprietà:
se la matrice A è simmetrica, allora A∞ è diagonale; gli elementi sulla
diagonale sono gli autovalori di A;
se la matrice A non è simmetrica, ma ha autovalori tutti reali, allora
A∞ è triangolare superiore; gli elementi sulla diagonale sono gli
autovalori di A;
se la matrice A non è simmetrica e ha alcuni autovalori complessi
(coniugati), allora A∞ è quasi triangolare superiore, ossia presenta
lungo la diagonale sottomatrici 1 × 1 contenenti gli autovalori reali di
A, e sottomatrici 2 × 2, i cui autovalori sono una coppia di autovalori
complessi coniugati di A.
Autovalori e SVD 48 / 87
Osservazioni
La convergenza del metodo nella sua versione base è garantita se la
matrice A ha autovalori tutti distinti in modulo.
Il metodo QR è alla base della function MATLAB eig.
Autovalori e SVD 49 / 87
Osservazioni
La convergenza del metodo nella sua versione base è garantita se la
matrice A ha autovalori tutti distinti in modulo.
Il metodo QR è alla base della function MATLAB eig.
Function Matlab
function [d,m] = qr_base(A,tol,m_max)
% l’algoritmo è applicabile se A ha autovalori distinti in modulo
for m = 1:m_max
[Q,R] = qr(A);
A = R*Q;
if norm(tril(A,-1),inf) <= tol
break
end
end
d = diag(A);
Autovalori e SVD 49 / 87
Applicazione 1. Viabilità interurbana
Consideriamo n città e sia A la matrice di ordine n con elementi
1, se la città i ha un collegamento diretto con la città j;
aij =
0, altrimenti.
Autovalori e SVD 50 / 87
... continua esempio
In figura si riporta una rappresentazione schematica delle connessioni
ferroviarie in Piemonte tra i capoluoghi di provincia: 1 Torino, 2 Cuneo, 3
Asti, 4 Vercelli, 5 Biella, 6 Verbania, 7 Novara, 8 Alessandria.
5
7
1 4
3
8
Autovalori e SVD 51 / 87
... continua esempio
La matrice A di ordine 8 associata alla rete ferroviaria in figura è
1 1 1 1 1 0 0 0
1 1 1 0 0 0 0 0
1 1 1 0 0 0 0 1
1 0 0 1 0 0 1 0
1 0 0 0 1 1 0 0
0 0 0 0 1 1 1 0
0 0 0 1 0 1 1 0
0 0 1 0 0 0 0 1
Autovalori e SVD 52 / 87
Applicazione 2. (Siti web)
Procedendo in maniera analoga all’applicazione 2, è possibile misurare
l’importanza di un determinato sito web tenendo conto dei siti che
puntano ad esso. Denotando con n il numero dei principali siti riguardanti
un determinato argomento, e con A la matrice di ordine n con elementi
1, se il sito web j ha un link al sito web i
aij =
0, altrimenti,
Autovalori e SVD 53 / 87
Valori singolari e decomposizione SVD
Autovalori e SVD 54 / 87
Teorema
Ogni matrice A ∈ Rm,n è fattorizzabile nella forma
A = US VT
con
Autovalori e SVD 55 / 87
Definizioni
La fattorizzazione A = US VT è detta decomposizione ai valori
singolari di A (o Singular Value Decomposition, SVD).
I valori si sono detti valori singolari di A.
Autovalori e SVD 56 / 87
Definizioni
La fattorizzazione A = US VT è detta decomposizione ai valori
singolari di A (o Singular Value Decomposition, SVD).
I valori si sono detti valori singolari di A.
UT AV = S
Autovalori e SVD 56 / 87
La matrice S ∈ Rm,n ha una delle seguenti forme
s1 0 ... ... 0 0 0
0 s2 ... ... 0 0 0
S =
.. .. .. .. .. se p = m (m < n),
. . . . . 0 0
0 0 ... . . . sm 0 0
oppure
s1 0 ... ... 0
0 s2 ... ... 0
.. .. .
.. ..
. ..
. . .
S
= .. ..
se p = n (m > n),
.. ..
. . . . sn
0 0 ... ... 0
0 0 ... ... 0
oppure
S = diag(s1 , . . . , sn ) ∈ Rn,n se p = m = n.
Autovalori e SVD 57 / 87
Sia S ∈ Rm,n con m > n. Allora si ha
s1 0 ... ... 0
vT 1
0 s2 ... ... 0
.. .. .. .. . vT 2
. ..
. . . ..
USVT =
u1 u2 . . . . . . . . . um
.. .. .. ..
.
..
. . . . sn
.
0 0 ... ... 0
vT
n
0 0 ... ... 0
s1 vT
1
s2 vT 2
..
.
= u1 u2 . . . . . . . . . um
sn vT
n
0
0
n
X
= u1 s1 vT T
1 + . . . + un sn vn = si ui vT
i
i=1
T Pp T
In generale vale USV = i=1 si ui vi , con p = min{m, n}.
Autovalori e SVD 58 / 87
I seguenti comandi Matlab consentono di calcolare i valori singolari e i
fattori U, S e V della decomposizione ai valori singolari della matrice A.
Comandi Matlab
d = svd(A) restituisce il vettore d contenente, in ordine decrescente,
i valori singolari di A.
[U,S,V] = svd(A) restituisce la matrice diagonale S, delle stesse
dimensioni di A e con elementi diagonali (non negativi e in ordine
decrescente) coincidenti con i valori singolari, e due matrici ortogonali
U e V tali che A = USVT .
Autovalori e SVD 59 / 87
Il calcolo dei valori singolari di una matrice A è un problema sempre ben
condizionato. Si può infatti dimostrare il seguente teorema.
Teorema
Sia A ∈ Rm,n e Ae una sua perturbazione. Siano si e s̃i i valori singolari di
A e di A,
e rispettivamente. Si ha
Autovalori e SVD 60 / 87
Proprietà della decomposizione SVD
Teorema
Sia A ∈ Rm,n e sia
A = USVT
la sua decomposizione ai valori singolari. Se risulta
s1 ≥ s2 ≥ . . . ≥ sr > sr +1 = . . . = sp = 0
allora
1) Il rango di A è r .
Pr
2) A = Ur Sr VTr =
T ove
i=1 si ui vi
Ur ∈ Rm,r è la matrice le cui colonne sono u1 , ..., ur ,
Vr ∈ Rn,r è la matrice le cui colonne sono v1 , ..., vr ,
Sr ∈ Rr ,r è la matrice diagonale i cui elementi diagonali sono s1 , ..., sr .
Autovalori e SVD 61 / 87
... continua teorema
3) Le colonne u1 , ..., ur di U formano una base ortonormale dello spazio
vettoriale immagine di A, cioè di Im(A) = {Ax : x ∈ Rn }.
4) Le colonne vr +1 , ..., vn di V formano una base ortonormale dello
spazio vettoriale nucleo di A, cioè di Ker(A) = {x ∈ Rn : Ax = 0}.
5) Le colonne ur +1 , ..., um formano una base ortonormale dello spazio
vettoriale Ker(AT ).
6) Le colonne v1 , ..., vr formano una base ortonormale dello spazio
vettoriale Im(AT ).
Autovalori e SVD 62 / 87
... continua teorema
7) λi = si2 , i = 1, ..., r , sono gli autovalori della matrice AT A ∈ Rn,n (i
restanti n − r autovalori sono nulli) e i corrispondenti autovettori
formano la matrice ortogonale V.
8) µi = si2 , i = 1, ..., r , sono gli autovalori della matrice AAT ∈ Rm,m (i
restanti m − r autovalori sono nulli) e i corrispondenti autovettori
formano la matrice ortogonale U.
9) Se m = n e A è simmetrica, allora si = |λi |, i = 1, . . . , n e i vettori
singolari destri e sinistri coincidono con gli autovettori di A.
Osservazione
In virtù della proprietà 7), in teoria si potrebbe pensare di determinare i
valori singolari di A, calcolando gli autovalori della matrice simmetrica
AT A. Questa procedura può però portare a una perdita di accuratezza.
Autovalori e SVD 63 / 87
Teorema
Sia A ∈ Rm,n e sia
A = USVT
la sua decomposizione ai valori singolari, con
s1 ≥ s2 ≥ . . . ≥ sr > sr +1 = . . . = sp = 0
e
Bk = {B ∈ Rm,n : rango di B è k}
si ha
min ||A − B||2 = ||A − Ak ||2 = sk+1
B∈Bk
Autovalori e SVD 64 / 87
Il precedente teorema stabilisce due importanti risultati:
la matrice Ak rappresenta la migliore approssimazione in norma 2 di
rango k della matrice A;
poiché la distanza d(A, Bk ) di A dall’insieme delle matrici di rango k
è cosı̀ definita d(A, Bk ) = infB∈Bk ||A − B||, il teorema afferma che
sk+1 rappresenta la distanza in norma 2 della matrice A dall’insieme
delle matrici di rango k.
Autovalori e SVD 65 / 87
Applicazioni della decomposizione SVD
s1 ≥ s2 ≥ . . . ≥ sr > sr +1 = . . . = sp = 0,
allora il rango di A è r .
Autovalori e SVD 66 / 87
Tuttavia, in precisione finita di calcolo, i valori singolari devono essere
selezionati sulla base di una tolleranza tol; pertanto, si definisce rango
numerico, il numero dei valori singolari maggiori di una tolleranza fissata.
Comandi Matlab
r = rank(A) restituisce in r il rango della matrice A sulla base di
una tolleranza di default, che dipende dalla matrice fornita in input e
dalla precisione di macchina.
r = rank(A,tol) restituisce in r il rango numerico della matrice A,
calcolato come il numero dei valori singolari maggiori della tolleranza
tol.
Autovalori e SVD 67 / 87
Applicazione 2. Calcolo del condizionamento di una matrice
La decomposizione ai valori singolari costituisce uno strumento efficace per
la determinazione del condizionamento spettrale di una matrice.
Sia A una matrice di ordine n e di rango n, e siano
s1 ≥ s2 ≥ ... ≥ sn > 0
Inoltre,
q q q
−1 −1 T −1 T −1 −1
||A ||2 = ρ((A ) A ) = ρ((A ) A ) = ρ((AAT )−1 ) = 1/sn .
Pertanto,
s1
K2 (A) = ||A||2 ||A−1 ||2 =
sn
Autovalori e SVD 68 / 87
Applicazione 3. Risoluzione del sistema lineare Ax = b
Dato il sistema lineare Ax = b, con A di dimensione n e non singolare, e
nota la decomposizione A = US VT , è possibile ottenere la soluzione x
mediante la risoluzione di un sistema diagonale e di due prodotti
matrice-vettore:
(
Sy = UT b ⇒ y
US V x = b =⇒ S |{z}
T T T
V x = U b =⇒
y
VT x = y ⇒ x = Vy
Autovalori e SVD 69 / 87
Applicazione 3. Risoluzione del sistema lineare Ax = b
Dato il sistema lineare Ax = b, con A di dimensione n e non singolare, e
nota la decomposizione A = US VT , è possibile ottenere la soluzione x
mediante la risoluzione di un sistema diagonale e di due prodotti
matrice-vettore:
(
Sy = UT b ⇒ y
US V x = b =⇒ S |{z}
T T T
V x = U b =⇒
y
VT x = y ⇒ x = Vy
Autovalori e SVD 69 / 87
Applicazione 4. Risoluzione di un sistema lineare
sovradeterminato
Si consideri il sistema lineare Ax = b con A di dimensione m × n, con
m ≥ n. Si supponga che il rango di A sia uguale a r ≤ n.
Si determina come soluzione del suddetto sistema, il vettore x? di minima
norma e soluzione del seguente problema dei minimi quadrati
||Ax − b||22 = ||UT (Ax − b)||22 = ||UT AVVT x − UT b||22 = ||S y − c||22
con y := VT x e c := UT b.
Autovalori e SVD 70 / 87
Tenendo conto che r è il numero dei valori singolari non nulli di A,
partizioniamo S , y e c nelle seguenti forme:
S̃
O
S= , S̃ ∈ Rr ,r
O O
y1 c1
y= c= , y1 , c1 ∈ Rr , y2 ∈ Rn−r , c2 ∈ Rm−r
y2 c2
Allora risulta
S̃ y1 − c1
2
||Ax − b||22 = ||S y − c||22 = = ||S̃ y1 − c1 ||22 + ||c2 ||22
−c2
2
Autovalori e SVD 71 / 87
Essendo S̃ non singolare e diagonale, S̃ y1 = c1 ammette una e una sola
soluzione y?1 , per la quale si ha ||S̃ y?1 − c1 ||22 = 0.
Autovalori e SVD 72 / 87
Essendo S̃ non singolare e diagonale, S̃ y1 = c1 ammette una e una sola
soluzione y?1 , per la quale si ha ||S̃ y?1 − c1 ||22 = 0. Denotando con (y1 )i le
componenti di y1 e con ui la i-esima colonna di U, e imponendo
r
||S̃ y1 −
X
c1 ||22 = (si (y1 )i − uT 2
i b) = 0,
i=1
si ricava
uT
i b
(y?1 )i = , i = 1, . . . , r
si
Autovalori e SVD 72 / 87
Fra tutti i vettori y di lunghezza n con le prime r componenti coincidenti
con quelle di y?1 , il vettore di minima norma euclidea y? è quello per cui le
restanti n − r componenti sono nulle.
In definitiva,
T
ui b , i = 1, . . . , r
?
yi = si
0, i = r + 1, . . . , n
Autovalori e SVD 73 / 87
Fra tutti i vettori y di lunghezza n con le prime r componenti coincidenti
con quelle di y?1 , il vettore di minima norma euclidea y? è quello per cui le
restanti n − r componenti sono nulle.
In definitiva,
T
ui b , i = 1, . . . , r
?
yi = si
0, i = r + 1, . . . , n
Ricordando che x = Vy, il vettore soluzione nel senso dei minimi quadrati è
r
X
x? = Vy? = yi? vi
i=1
Si osservi che, poiché ||x? ||2 = ||y? ||2 , x? ha norma euclidea minima.
Autovalori e SVD 73 / 87
Sia
1,
i ≡ j = 1, . . . , r
S + ∈ Rn,m : (S )ij = si
+
0, i ≡ j = r + 1, . . . , n, i 6= j
allora
y? = S + UT b
e
x? = VS + UT b
Posto
A+ = VS + U T
si ha quindi che la soluzione nel senso dei minimi quadrati e di minima
norma del sistema sovradeterminato Ax = b è
x? = A+ b
Autovalori e SVD 74 / 87
Definizione
La matrice A+ è detta pseudo-inversa di Moore-Penrose oppure
inversa generalizzata di A.
Autovalori e SVD 75 / 87
Definizione
La matrice A+ è detta pseudo-inversa di Moore-Penrose oppure
inversa generalizzata di A.
Autovalori e SVD 75 / 87
Definizione
La matrice A+ è detta pseudo-inversa di Moore-Penrose oppure
inversa generalizzata di A.
Comando Matlab
X = pinv(A) restituisce in X la pseudo-inversa della matrice A a partire
dalla sua SVD. I valori singolari al di sotto di una tolleranza di default
(dipendente da A) sono trattati come zeri.
Autovalori e SVD 75 / 87
Definizione
La matrice A+ è detta pseudo-inversa di Moore-Penrose oppure
inversa generalizzata di A.
Comando Matlab
X = pinv(A) restituisce in X la pseudo-inversa della matrice A a partire
dalla sua SVD. I valori singolari al di sotto di una tolleranza di default
(dipendente da A) sono trattati come zeri.
X = pinv(A,tol) restituisce in X la pseudo-inversa di A ottenuta
ponendo uguali a zero i valori singolari al di sotto della tolleranza tol.
Autovalori e SVD 75 / 87
Osservazione
Nel caso di un sistema lineare mal condizionato, una procedura numerica
che consente di ottenere una soluzione più accurata di quella che si ottiene,
per esempio, con la fattorizzazione PA = LU, consiste nel trascurare
(annullare) i valori singolari più piccoli (al di sotto di una prefissata
tolleranza), nell’approssimare la matrice A con una matrice di rango
inferiore e, infine, nel risolvere il risultante problema dei minimi quadrati.
Autovalori e SVD 76 / 87
Esempio
Consideriamo, per esempio, il sistema lineare Ax = b con matrice A di
Hilbert di ordine n = 15 e con termine noto b definito in modo tale che la
soluzione coincida con il vettore x = (1, . . . , 1)T .
Il condizionamento in norma spettrale del suddetto sistema è all’incirca
1017 .
L’errore in norma 2 associato alla soluzione, ottenuta mediante il metodo
delle eliminazioni di Gauss con pivoting parziale, è superiore al 100%.
Autovalori e SVD 77 / 87
Esempio
Consideriamo, per esempio, il sistema lineare Ax = b con matrice A di
Hilbert di ordine n = 15 e con termine noto b definito in modo tale che la
soluzione coincida con il vettore x = (1, . . . , 1)T .
Il condizionamento in norma spettrale del suddetto sistema è all’incirca
1017 .
L’errore in norma 2 associato alla soluzione, ottenuta mediante il metodo
delle eliminazioni di Gauss con pivoting parziale, è superiore al 100%.
Invece, indicato con r il numero dei valori singolari più grandi per esempio
= 10−12 , se si procede approssimando A con la matrice
di tol P
Ar = ri=1 si ui vTi di rango r e risolvendo il risultante sistema, l’errore in
norma 2 associato alla soluzione è dell’ordine di 10−6 .
Autovalori e SVD 77 / 87
... continua esempio
Infatti con le seguenti istruzioni e il metodo delle eliminazioni di Gauss
implementato nativamente in Matlab
n = 15;
A = hilb(n);
b = sum(A,2);
x_gauss = A\b;
u = ones(n,1);
err_gauss = norm(u-x_gauss)/norm(u)
Autovalori e SVD 78 / 87
... continua esempio
Infatti con le seguenti istruzioni e il metodo delle eliminazioni di Gauss
implementato nativamente in Matlab
n = 15;
A = hilb(n);
b = sum(A,2);
x_gauss = A\b;
u = ones(n,1);
err_gauss = norm(u-x_gauss)/norm(u)
si ha
Warning: Matrix is close to singular or badly scaled.
Results may be inaccurate. RCOND = 5.460912e-19.
err_gauss =
6.1408e+00
Autovalori e SVD 78 / 87
... continua esempio
Invece con il seguente algoritmo
tol = 1.0e-12;
[U,S,V] = svd(A);
r = rank(A,tol);
y = zeros(n,1);
y(1:r) = (U(:,1:r)’*b)./s(1:r);
x_svd = V*y
err_svd = norm(u-x_svd)/norm(u)
Autovalori e SVD 79 / 87
... continua esempio
Invece con il seguente algoritmo
tol = 1.0e-12;
[U,S,V] = svd(A);
r = rank(A,tol);
y = zeros(n,1);
y(1:r) = (U(:,1:r)’*b)./s(1:r);
x_svd = V*y
err_svd = norm(u-x_svd)/norm(u)
si ottiene un errore più piccolo:
err_svd =
1.0667e-06
Si osservi che la soluzione x svd si può calcolare anche scrivendo
x_svd = pinv(A,tol)*b.
Autovalori e SVD 79 / 87
Risoluzione di un sistema lineare sottodeterminato
Si consideri il sistema lineare Ax = b con A di dimensione m × n, con
m < n. Si supponga che il rango di A sia uguale ad r = m e che A
ammetta la seguente decomposizione ai valori singolari A = US VT .
Si ha
Ax = b
Autovalori e SVD 80 / 87
Risoluzione di un sistema lineare sottodeterminato
Si consideri il sistema lineare Ax = b con A di dimensione m × n, con
m < n. Si supponga che il rango di A sia uguale ad r = m e che A
ammetta la seguente decomposizione ai valori singolari A = US VT .
Si ha
VT x = UT b
Ax = b =⇒ S |{z}
y
Autovalori e SVD 80 / 87
Risoluzione di un sistema lineare sottodeterminato
Si consideri il sistema lineare Ax = b con A di dimensione m × n, con
m < n. Si supponga che il rango di A sia uguale ad r = m e che A
ammetta la seguente decomposizione ai valori singolari A = US VT .
Si ha
Sy = UT b
T T
Ax = b =⇒ S |{z}
V x = U b =⇒
y
Autovalori e SVD 80 / 87
Risoluzione di un sistema lineare sottodeterminato
Si consideri il sistema lineare Ax = b con A di dimensione m × n, con
m < n. Si supponga che il rango di A sia uguale ad r = m e che A
ammetta la seguente decomposizione ai valori singolari A = US VT .
Si ha
Sy = UT b
T T
Ax = b =⇒ S |{z}
V x = U b =⇒
VT x = y
y
Autovalori e SVD 80 / 87
Riscrivendo S nella forma
S = S̃ O , S̃ ∈ Rm,m
x? = Vy? .
Autovalori e SVD 81 / 87
Applicazione 3. Compressione di immagini
La capacità della decomposizione SVD di fornire informazioni su come
ottenere approssimazioni di rango inferiore di una matrice assegnata, è
utile in molteplici applicazioni.
Segnaliamo, ad esempio, il suo utilizzo negli algoritmi di compressione dei
dati, in particolare, nella codifica di immagini.
Ogni foto può essere discretizzata decomponendo l’immagine in
quadrettini e assegnando un livello di grigio ad ogni quadrettino.
Imponendo, ad esempio, una griglia di dimensione 1000 × 1000 su una
foto e assegnando un livello di grigio da 0 a 10, si ha una matrice
(blackness matrix) di 1000000 interi.
Autovalori e SVD 82 / 87
... continua esempio
Sia A la matrice che definisce i livelli di grigio. Mediante la decomposizione
in valori singolari si vede se l’approssimazione di rango inferiore
n
X
An = si ui vT
i
i=1
Autovalori e SVD 83 / 87
... continua esempio
La matrice che genera la prima immagine nella slide che segue, occupa
uno spazio di memoria pari a
271 · 300 · 8 bytes = 650400 bytes
Le immagini successive sono state ottenute approssimando la suddetta
matrice con matrici di rango n = 10, 30, 50, rispettivamente.
In tal caso, l’occupazione di memoria è inferiore ed è data da
(271 · n + 300 · n + n) · 8 bytes
pari al 7%, 21% e 35% della memoria totale.
Autovalori e SVD 84 / 87
... continua esempio
650400 bytes n=10, 45760 bytes (7%)
Autovalori e SVD 85 / 87
Esempio
Questa è l’approssimazione An , di rango n = 5,
n=5
Autovalori e SVD 86 / 87
... continua esempio
della matrice A che genera la seguente immagine:
Autovalori e SVD 87 / 87