Matrici diagonalizzabili
• Se una matrice A ha n autovalori λi reali distinti, allora ha anche n autovettori vi reali linearimente indipendenti tra di loro:
A vi = λivi, i ∈ {1, 2, 3, . . . , n}.
• In questo caso la matrice A pu`o essere diagonalizzata utilizzando una tra- sformazione T le cui colonne coincidono con gli autovettori vi:
T = v1 v2 v3 . . . vn
• Sulla diagonale della matrice A = T−1AT sono presenti tutti gli autovalori λi della matrice A secondo l’ordine dato dalla sequenza degli autovettori vi
presenti all’interno della matrice T:
A = T−1AT =
λ1 λ2
λ3 . ..
λn
• Una matrice A pu`o essere diagonalizzata se e solo se per essa `e possibile tro- vare un numero di autovettori vi linearmente indipendenti pari alla dimensione n della matrice stessa.
• Una matrice A pu`o essere diagonalizzata anche se non ha tutti gli autovalori λi reali distinti.
• Le matrici non diagonalizzabili possono essere portate in forma canonica di Jordan. Tale forma canonica `e quella che maggiormente si avvicina ad una forma diagonale.
• Una matrice A pu`o essere diagonalizzata anche se ha degli autovalori λi complessi coniugati. In questo caso gli autovettori vi sono complessi coniugati e la matrice di trasformazione T `e complessa.
Forma canonica di Jordan
• Siano λi, per i = 1, . . . , h, gli autovalori “distinti” della matrice A e siano ri i corrispondenti gradi di molteplicit`a all’interno del polinomio caratteristico:
∆A(λ) = (λ − λ1)r1(λ− λ2)r2 . . .(λ− λh)rh
• Una matrice A posta in forma canonica di Jordan A ha la seguente forma diagonale a blocchi:
A = T−1AT =
J1 0 . . . 0 0 J2 . . . 0 ... ... ... ...
0 0 . . . Jh
• Ad ogni autovalore distinto λi della matrice A corrisponde un blocco di Jordan Ji di dimensione pari alla molteplicit`a algebrica ri dell’autovalore λi, cio`e pari al grado di molteplicit`a ri dell’autovalore λi all’interno del polinomio caratteristico ∆A(λ).
• A sua volta ogni blocco di Jordan Ji ha la struttura di una matrice diagonale a blocchi:
Ji =
Ji,1 0 . . . 0 0 Ji,2 . . . 0 ... ... ... ...
0 0 . . . Ji,mi
dim Ji = ri
i = 1, . . . , h
• Sulla diagonale del blocco di Jordan Ji sono presenti mi miniblocchi di Jordan Ji, j, dove mi `e la molteplicit`a geometrica dell’autovalore λi, cio`e il numero di autovettori linearmente indipendenti vi,j associati all’autovalore λi.
• La struttura di tutti i miniblocchi di Jordan Ji, j `e la seguente:
Ji,j =
λi 1 0 . . . 0 0 0 λi 1 . . . 0 0 0 0 λi . . . 0 0 ... ... ... ... ... ...
0 0 0 . . . λi 1 0 0 0 . . . 0 λi
dim Ji,j = νi,j
j = 1, . . . , mi
• La dimensione νi,j di ciascun miniblocco di Jordan Ji, j `e pari al dimensione della catena di “autovettori generalizzati” che `e possibile determinare a partire dall’autovettore vi,j.
• Valgono le seguenti relazioni:
n = Xh
i=1
ri, ri =
mi
X
j=1
νi,j.
• La matrice A `e diagonalizzabile se e solo se la dimensione νi,j di tutti i miniblocchi di Jordan Ji, j `e unitaria: νi,j = 1.
• In questo caso tutti i miniblocchi di Jordan Ji, j = λi coincidono con il corrispondente autovalore λi e tutti i blocchi di Jordan Ji sono diagonali e caratterizzati dallo stesso autovalore λi:
Ji, j = λi, Ji =
λi 0 . . . 0 0 λi . . . 0 ... ... ... ...
0 0 . . . λi
,
dim Ji = ri
i = 1, . . . , h
• Una matrice A `e diagonalizzabile se e solo se la molteplicit`a algebrica ri di ciascun autovalore λi `e uguale alla molteplicit`a geometrica mi, cio`e se il numero mi di autovettori vi,j linearmente indipendenti associati a ciascun autovalore λi
`e uguale alla molteplicit`a algebrica ri dell’autovalore λi all’interno del polinomio caratteristico ∆A(λ).
• Esempio. Matrice in forma canonica di Jordan:
A=
−1 1 0 −1
−3
−3 1 0 −3
=
J1,1 J2,1
J2,2
=
J1 J2
,
∆A(λ) = (λ + 1)2(λ + 3)3 n= 5, h = 2 λ1 = −1, λ2 = −3
r1 = 2, r2 = 3 m1 = 1, m2 = 2 La matrice A ha due autovalori distinti λ1 = −1 e λ2 = −3. L’autovalore λ1 ha molteplicit`a algebrica r1 = 2 e molteplicit`a geometrica m1 = 1. L’autovalore λ2 ha molteplicit`a algebrica r2 = 3 e molteplicit`a geometrica m2 = 2. Il blocco di Jordan J1 ha dimensione r1 = 2 ed `e composto da un solo miniblocco J1,1. Il secondo blocco di Jordan J2 ha dimensione r2 = 3 ed `e composto da m2 = 2 miniblocchi J2,1 e J2,2.
• Gli mi autovettori linearmente indipendenti vi,j associati all’autovalore λi si determinano risolvendo il seguente sistema lineare autonomo:
(λiI− A)vi,j = 0, j = 1, . . . , mi.
• Il numero mi degli autovettori linearmente indipendenti vi,j `e pari al numero di miniblocchi Ji,j presenti all’interno del blocco di Jordan Ji.
• Nel caso in cui si abbia mi < ri, il numero degli autovettori vi,j linearmente indipendenti non `e sufficiente per diagonalizzare la matrice. In questo caso oc- corre procedere alla determinazione delle catene v(k)i,j di autovettori generalizzati per i = 1, 2, . . . , h, j = 1, 2, . . . , mi e k = 1, 2, . . . , νi,j.
• Gli autovettori generalizzati vi,j(k) si determinano risolvendo il seguente sistema di equazioni lineari:
(A − λiI)vi,j(2) = vi,j(1) = vi,j
(A − λiI)vi,j(3) = vi,j(2)
... ...
(A− λiI)v(νi,ji,j) = vi,j(νi,j−1)
Il primo autovettore v(1)i,j = vi,j `e noto. Risolvendo la prima equazione del sistema si ricava l’autovettore generalizzato v(2)i,j , il quale, sostituito nell’equa- zione successiva permette di determinare l’autovettore generalizzato v(3)i,j, . . . e cos`ı via.
• La particolare struttura “quasi diagonale” dei miniblocchi di Jordan Ji,j si ottiene inserendo catene di autovettori generalizzati v(k)i,j tra le colonne della matrice di trasformazione T:
T = . . . vi,j(1) vi,j(2) . . . v(νi,ji,j) . . .
• Se la molteplicit`a geometrica mi `e uguale alla molteplicit`a algebrica ri, cio`e se mi = ri, la catena di autovettori generalizzati vi,j(k) ha lunghezza unitaria ed
`e costituita dal solo autovettore vi,j.
• Esempio numerico in Matlab:
clc; echo on
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Matrice da portare in forma canonica di Jordan
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
A =sym([...
73/129, -18/43, 1/129, 383/129, -1213/258;
2610/989, -2419/989, -687/989, 1759/989, -6889/1978;
2885/989, 655/989, -4039/989, 2310/989, -3905/989;
2273/989, -2079/989, 1565/989, -326/989, -5915/1978;
4456/2967, -3052/989, 9190/2967, 4778/2967, -13964/2967]);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Il comando "jordan(A)" porta la matrice A in forma canonica di Jordan
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[V,AJ]=jordan(A);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
AJ %%% Forma di Jordan della matrice A
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
AJ =
[ -3, 1, 0, 0, 0]
[ 0, -3, 0, 0, 0]
[ 0, 0, -1, 1, 0]
[ 0, 0, 0, -1, 0]
[ 0, 0, 0, 0, -3]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
V %%% Matrice degli autovettori generalizzati della matrice A
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
V =
[ -522/989, -242/989, 4760/2967, 1231/989, 6450201/4106690]
[ -406/989, -3334/2967, 2380/2967, 3334/2967, -142348/293335]
[ -290/989, -3275/2967, 2975/2967, 3275/2967, -903187/1642676]
[ -348/989, -418/989, 1785/989, 418/989, -186498/2053345]
[ -580/989, -718/2967, 4760/2967, 718/2967, 966065/821338]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Verifica: le colonne di V sono gli autovettori generalizzati di A
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
(A-(-3)*eye(5))*V(:,1)==0 % --> Vero (A-(-3)*eye(5))*V(:,2)==V(:,1) % --> Vero (A-(-1)*eye(5))*V(:,3)==0 % --> Vero (A-(-1)*eye(5))*V(:,4)==V(:,3) % --> Vero (A-(-3)*eye(5))*V(:,5)==0 % --> Vero
• L’evoluzione libera di un sistema discreto `e la seguente:
x(k) = Akx0 = (TAT−1)kx0 = TAkT−1x0
= T
J1 0 . . . 0 0 J2 . . . 0 ... ... ... ...
0 0 . . . Jh
k
T−1x0 = T
Jk1 0 . . . 0 0 Jk2 . . . 0 ... ... ... ...
0 0 . . . Jkh
T−1x0
• L’evoluzione libera di un sistema tempo-continuo `e la seguente:
x(t) = eAtx0 = TeAtT−1x0
= T e
J1 0 . . . 0 0 J2 . . . 0 ..
. .. .
.. .
.. . 0 0 . . . Jh
t
T−1x0 = T
eJ1t 0 . . . 0 0 eJ2t . . . 0 ... ... ... ...
0 0 . . . eJht
T−1x0
• Per poter calcolare la potenza Ak e l’esponenziale eAt della matrice gene- rica A `e sufficiente saper calcolare la potenza e l’esponenziale del generico miniblocco di Jordan di dimensione ν:
J =
λ 1 0 . . . 0 0 0 λ 1 . . . 0 0 0 0 λ . . . 0 0 ... ... ... ... ... ...
0 0 0 . . . λ 1 0 0 0 . . . 0 λ
= λI + N
• La matrice J pu`o essere espressa come somma della matrice diagonale λI e di una matrice nilpotente N che ha elementi non nulli e unitari solo sulla prima sovradiagonale. Nel caso ν = 5, si ha:
N =
0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0
• Le potenze della matrice N hanno la seguente struttura:
N2 =
0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
N3 =
0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
. . .
cio`e, la matrice Nk ha elementi non nulli solo sulla k-esima sovradiagonale.
• La matrice N `e nilpotente di ordine ν perch`e soddisfa alla seguente relazione:
Nν = 0 dove ν = dim N.
• La potenza k-esima della matrice J pu`o essere espressa nel seguente modo:
Jk = (λI + N)k = λkI +
k 1
λk−1N+
k 2
λk−2N2 + . . . + Nk
• Sapendo che le potenze Nh sono nulle per h ≥ ν, si ha che:
Jk = (λI + N)k
= λkI+
k 1
λk−1N+
k 2
λk−2N2 + . . . +
k ν−1
λk−ν+1Nν−1
=
λk kλk−1 k(k−1)2 λk−2 . . .
k ν−2
λk−ν+2
k ν−1
λk−ν+1
0 λk kλk−1 . . . ... k
ν−2
λk−ν+2
0 0 λk . . . ... ...
... ... ... ... ... ...
0 0 0 . . . λk kλk−1
0 0 0 . . . 0 λk
• Con il simbolo
k h
si `e indicato il seguente coefficiente binomiale:
k h
= k(k − 1) . . . (k − h + 1) h!
• Le funzioni f(λ, k) che compaiono all’interno della matrice Jk sono i modi del sistema discreto associati all’autovalore λ.
• Nel caso tempo-continuo l’esponenziale eJt si calcola nel seguente modo:
eJt = e(λI+N)t = eλIteNt = eλtIeNt
= eλt X∞
n=0
tn
n!Nn = eλtνX−1
n=0
tn n!Nn
= eλtI+ tN + t22N2 + . . . + (ν−1)!tν−1 Nν−1
=
eλt teλt t22eλt 3!t3eλt . . . tν−3
(ν−3)!eλt tν−2
(ν−2)!eλt tν−1
(ν−1)!eλt 0 eλt teλt t22eλt . . . ... (ν−3)!tν−3 eλt (ν−2)!tν−2 eλt 0 0 eλt teλt . . . ... ... (ν−3)!tν−3 eλt
0 0 0 eλt . . . ... ... ...
... ... ... ... ... ... ... ...
0 0 0 0 . . . eλt teλt t22eλt
0 0 0 0 . . . 0 eλt teλt
0 0 0 0 . . . 0 0 eλt
• Le funzioni del tempo f(λ, t) che compaiono all’interno della matrice eJt sono i modi del sistema tempo-continuo associati all’autovalore λ.
• La forma di Jordan `e valida anche nel caso di autovalori λi complessi coniugati. Esempio numerico in Matlab:
A =[ 1 6 -3 -7; --> AJ=[-5.15+4.77i 0 0 0;
-5 -8 2 7; 0 -5.15-4.77i 0 0;
-20 -16 -15 -17; 0 0 -2.85+3.86i 0;
10 6 8 6] 0 0 0 -2.85-3.86i]
[T,AJ]=eig(A) % Porta la matrice A in forma di Jordan AJ
T=[-0.49-0.17i -0.49+0.17i 0.67 0.67;
0.54 0.54 -0.60+0.25i -0.60-0.25i;
0.30-0.42i 0.30+0.42i -0.31-0.05i -0.31+0.05i;
-0.22+0.36i -0.21-0.36i -0.01-0.13i -0.01+0.13i]
• Nel caso di autovalori λi complessi coniugati anche le matrici T e AJ so- no “complesse” e quindi di “problematica” utilizzazione. In questo caso si preferisce utilizzare la forma reale di Jordan.
• Forma reale di Jordan. Si faccia riferimento ad una matrice A di di- mensione 6 caratterizzata da due autovalori complessi coniugati λ1,2 con mol- teplicit`a algebrica r = 3 e molteplicit`a geometrica m = 1:
λ1,2 = σ ± jω, ∆A(λ) = (λ − λ1)3(λ − λ2)3 = [(λ − σ)2 + ω2]3 Sia v1, v2 e v3 la catena di autovettori generalizzati associati all’autovettore complesso v1. Applicando ad A la trasformazione di coordinate “complessa”:
x = T x, T = v1 v2 v3 v∗1 v∗2 v3∗ si ottiene una matrice “complessa” A in forma canonica di Jordan:
A = T−1AT =
λ1 1 0 0 0 0 0 λ1 1 0 0 0 0 0 λ1 0 0 0 0 0 0 λ∗1 1 0 0 0 0 0 λ∗1 1 0 0 0 0 0 λ∗1
Si ottengono due miniblocchi di Jordan “complessi” di dimensione 3.
• Siano viR e viI la parte reale e la parte immaginaria dell’autovettore gene- ralizzato vi. Utilizzando la seguente trasformazione di coordinate:
x = ˜Tx,˜ T˜ = v1R v1I v2R v2I v3R v3I la matrice A viene posta in “forma reale di Jordan”:
A˜ = ˜T−1A ˜T =
σ ω 1 0 0 0
−ω σ 0 1 0 0
0 0 σ ω 1 0
0 0 −ω σ 0 1
0 0 0 0 σ ω
0 0 0 0 −ω σ
(1)
• In questo modo le evoluzioni libere dei sistemi lineari possono essere espresse come combinazione lineare di soli termini reali:
x(k) = Akx0 = ˜T ˜AkT˜−1x0, x(t) = eAtx0 = ˜TeAt˜ T˜−1x0.
• Indichiamo con |λ| e θ il modulo e la fase del numero complesso λ = σ +jω:
|λ| = √
σ2 + ω2 θ = arctan ω
σ
σ = |λ| cos θ ω = |λ| sin θ
|λ| λ θ
σ ω
• Il miniblocco reale di Jordan J pu`o essere espresso nel seguente modo:
J =
σ ω
−ω σ
= |λ|
cos θ sin θ
− sin θ cos θ
.
• Valgono le seguenti relazioni:
eJt =
eσtcos ωt eσtsin ωt
−eσtsin ωt eσtcos ωt
, Jk = |λ|k
cos kθ sin kθ
− sin kθ cos kθ
.
• Esempio in Matlab:
syms sig w t J=[sig w; -w sig]
EJt=simplify(expm(J*t))
J = EJt =
[ sig, w] [ exp(sig*t)*cos(t*w), exp(sig*t)*sin(t*w)]
[ -w, sig] [ -exp(sig*t)*sin(t*w), exp(sig*t)*cos(t*w)]
• La potenza k-esima ˜Ak della matrice reale di Jordan ˜A in (1) `e la seguente:
A˜k=
|λ|k
"
cos kθ sin kθ
− sin kθ cos kθ
#
k|λ|k−1
"
cos(k−1)θ sin(k−1)θ
− sin(k−1)θ cos(k−1)θ
#
k(k−1) 2 |λ|k−2
"
cos(k−2)θ sin(k−2)θ
− sin(k−2)θ cos(k−2)θ
#
0 |λ|k
"
cos kθ sin kθ
− sin kθ cos kθ
#
k|λ|k−1
"
cos(k−1)θ sin(k−1)θ
− sin(k−1)θ cos(k−1)θ
#
0 0 |λ|k
"
cos kθ sin kθ
− sin kθ cos kθ
#
• L’esponenziale eAt˜ della matrice reale di Jordan ˜A in (1) `e la seguente:
eAt˜ =
eσtcos ωt eσtsin ωt teσtcos ωt teσtsin ωt t22eσtcos ωt t22eσtsin ωt
−eσtsin ωt eσtcos ωt −teσtsin ωt teσtcos ωt −t22eσtsin ωt t22eσtcos ωt 0 0 eσtcos ωt eσtsin ωt teσtcos ωt teσtsin ωt 0 0 −eσtsin ωt eσtcos ωt −teσtsin ωt teσtcos ωt
0 0 0 0 eσtcos ωt eσtsin ωt
0 0 0 0 −eσtsin ωt eσtcos ωt
Esempio. Dato il seguente sistema dinamico:
˙x(t) =
1 0 1
2 1 1
1 −1 2
x(t), x0 =
1 1 1
determinare l’evoluzione libera x(t) del sistema a partire dalla condizione iniziale x(0) = x0. La soluzione formale del problema `e la seguente:
x(t) = eAtx0 = TeAtT−1x0
dove T `e la matrice di trasformazione che “diagonalizza” la matrice A. Per determinare T occorre calcolare gli autovalori e gli autovettori di A:
det(sI − A) =
s− 1 0 −1
−2 s − 1 −1
−1 1 s− 2
= s(s2 − 4s + 5) = s[(s − 2)2 + 1)]
Gli autovalori sono s1,2 = 2 ± j e s3 = 0. L’autovettore complesso v1 corrispondente all’autovalore s1 = 2 + j `e il seguente:
(s1I− A)v1= o ⇔
1 + j 0 −1
−2 1 + j −1
−1 1 j
v1= o ⇒ v1=
1 2 − j 1 + j
= v1R+ jv1I
L’autovettore reale v3 corrispondente all’autovalore s3 = 0 `e:
(s3I− A)v3 = −Av3 = o ↔ −
1 0 1
2 1 1
1 −1 2
v3 = o → v3 =
1
−1
−1
La seguente matrice di trasformazione T:
T = h v1R v1I v3 i =
1 0 1
2 −1 −1 1 1 −1
, T−1 = 1
5
2 1 1
1 −2 −3 3 1 −1
porta la matrice A nella forma “reale” di Jordan:
A = T−1AT =
2 1 0
−1 2 0 0 0 0
L’evoluzione libera x(t) del sistema a partire dalla condizione iniziale x0 `e quindi la seguente:
x(t) = T
e2tcos t e2tsin t 0
−e2tsin t e2tcos t 0
0 0 1
T−1x0.