Diagonalizzazione unitaria di matrici
Buonasera,
ho una domanda da porvi riguardo alla diagonalizzazione unitaria di matrici.
Vi scrivo perchè non riesco a calcolare la matrice $U$ tale che $A=UDU^{-1}$ con D matrice diagonale e $U$ matrice unitaria. Ho capito che U ha come colonne gli autovettori relativi agli autovalori scritti nella matrice D. E ho capito anche che U ha per colonne un insieme di vettori ortonormali di R o di C a seconda dei casi. La domanda è la seguente: una volta trovata una base per ciascuno autospazio di A relativo a tutti gli autovalori, come devo procedere per trovare U?
Finora ho usato questo metodo, ma a quanto pare funziona solo con le matrici A 2x2:
1) Prendevo un vettore a scelta dalla base relativa al primo autospazio della matrice A
2) Lo normalizzavo dividendolo per la sua norma
3) Imponevo che il prodotto interno standard tra il vettore ricavato al punto 2 e un vettore generico [x y] fosse uguale a zero
4) Normalizzavo il secondo vettore trovato
5) inserivo i due vettori come colonne di U
Però con le matrici 3x3 questo metodo non funziona. Devo usare l'algoritmo di gram-schmidt forse? Se sì come?
Grazie a tutti.
ho una domanda da porvi riguardo alla diagonalizzazione unitaria di matrici.
Vi scrivo perchè non riesco a calcolare la matrice $U$ tale che $A=UDU^{-1}$ con D matrice diagonale e $U$ matrice unitaria. Ho capito che U ha come colonne gli autovettori relativi agli autovalori scritti nella matrice D. E ho capito anche che U ha per colonne un insieme di vettori ortonormali di R o di C a seconda dei casi. La domanda è la seguente: una volta trovata una base per ciascuno autospazio di A relativo a tutti gli autovalori, come devo procedere per trovare U?
Finora ho usato questo metodo, ma a quanto pare funziona solo con le matrici A 2x2:
1) Prendevo un vettore a scelta dalla base relativa al primo autospazio della matrice A
2) Lo normalizzavo dividendolo per la sua norma
3) Imponevo che il prodotto interno standard tra il vettore ricavato al punto 2 e un vettore generico [x y] fosse uguale a zero
4) Normalizzavo il secondo vettore trovato
5) inserivo i due vettori come colonne di U
Però con le matrici 3x3 questo metodo non funziona. Devo usare l'algoritmo di gram-schmidt forse? Se sì come?
Grazie a tutti.
Risposte
Devi trovare una base ortonomale per ogni autospazio, poi le unisci e ottieni una base ortonormale di R^n . I vettori di questa base sono le colonne della matrice $ U $
Grazie per l'immediata risposta. 
Però ho ancora un dubbio: come fai a trovare una base ortonormale per ogni autospazio a partire da una base "semplice"? Utilizzi l'algoritmo di Gram-Schimdt?
Inoltre cosa succede se gli autovalori della matrice non sono tutti distinti? il metodo cambia?
Grazie ancora.

Però ho ancora un dubbio: come fai a trovare una base ortonormale per ogni autospazio a partire da una base "semplice"? Utilizzi l'algoritmo di Gram-Schimdt?
Inoltre cosa succede se gli autovalori della matrice non sono tutti distinti? il metodo cambia?
Grazie ancora.
[xdom="Martino"]Benvenuto nel forum. Sposto in algebra lineare. Attenzione alla sezione in futuro, grazie.[/xdom]
Se gli autovalori non sono tutti distinti allora qualcuno degli autospazi ti verrà per forza di dimensione 2 o superiore e tu dovrai trovare una sua base ortonormale, per farlo puoi anche usare grham smith (se ti conviene)
Ah, ok, ora ho capito.
Quindi se gli autovalori della matrice sono tutti distinti, si fa presto perchè basta trovare una base per ogni autospazio; prendere un vettore a piacere da queste; normalizzarli e poi si uniscono tutti formando le colonne di U.
Se invece gli autovalori non sono distinti, devo trovare una base per ogni autospazio, di cui qualcuna sarà di dimensione 2 o superiore. In questo caso fisso il primo vettore della base, lo normalizzo e trovo il secondo vettore con Gram-schmidt (che andrà poi normalizzato).
Però cosa succede se, per esempio, ho una matrice 3x3 con un autovalore triplo, ossia con tutti e tre gli autovalori coincidenti? In tal caso avrei un solo autospazio con base di dimensione 2. Da questa base con il metodo di prima riesco a trovarmi il primo e il secondo vettore da inserire come colonne di U, ma il terzo vettore come lo trovo?
Ti ringrazio ancora. Sei stato disponibilissimo.

Quindi se gli autovalori della matrice sono tutti distinti, si fa presto perchè basta trovare una base per ogni autospazio; prendere un vettore a piacere da queste; normalizzarli e poi si uniscono tutti formando le colonne di U.
Se invece gli autovalori non sono distinti, devo trovare una base per ogni autospazio, di cui qualcuna sarà di dimensione 2 o superiore. In questo caso fisso il primo vettore della base, lo normalizzo e trovo il secondo vettore con Gram-schmidt (che andrà poi normalizzato).
Però cosa succede se, per esempio, ho una matrice 3x3 con un autovalore triplo, ossia con tutti e tre gli autovalori coincidenti? In tal caso avrei un solo autospazio con base di dimensione 2. Da questa base con il metodo di prima riesco a trovarmi il primo e il secondo vettore da inserire come colonne di U, ma il terzo vettore come lo trovo?
Ti ringrazio ancora. Sei stato disponibilissimo.

Se hai studiato la teoria sai meglio di me che se l'autovalore è triplo allora l'autospazio ha dimensione 3 altrimenti la matrice non è diagonalizzabile...
Hai ragione! Infatti, una matrice è diagonalizzabile se e solo se, per ogni autovalore distinto, la molteplicità algebrica coincide con la molteplicità geometrica!
In effetti, nell'esercizio che ha svolto il professore, c'era una matrice A 3x3 con un autovalore triplo e l'autospazio aveva dimensione 2 e lui ha giustamente operato una triangolarizzazione unitaria sfruttando il teorema di Schur, visto che la diagonalizzazione unitaria non era possible. Però in questo caso ho sempre il dubbio di prima. Cioè, se ho una matrice A 3x3 con un autovalore triplo e l'unico autospazio ha dimensione 2, come devo procedere per trovare tutte e tre le colonne di U? Le prime due colonne le riesco a ricavare con il solito metodo, ma la terza colonna come la trovo?
Grazie mille ancora!!
In effetti, nell'esercizio che ha svolto il professore, c'era una matrice A 3x3 con un autovalore triplo e l'autospazio aveva dimensione 2 e lui ha giustamente operato una triangolarizzazione unitaria sfruttando il teorema di Schur, visto che la diagonalizzazione unitaria non era possible. Però in questo caso ho sempre il dubbio di prima. Cioè, se ho una matrice A 3x3 con un autovalore triplo e l'unico autospazio ha dimensione 2, come devo procedere per trovare tutte e tre le colonne di U? Le prime due colonne le riesco a ricavare con il solito metodo, ma la terza colonna come la trovo?
Grazie mille ancora!!
Non ti so aiutare perchè purtroppo non ho mai fatto esercizi sulla triangolazione unitaria, so fare la diagonalizzazione perche conosco un minimo di algebra lineare studiata in un testo di Geometria, ma l'argomento decomposizine di schur mi manca. Ho provato a cercare su google qualche esercizio svolto che potesse fare al caso tuo ma per il momento non ne ho trovati ...
P.S. Ora che ci penso... se $ u_1 $ e $ u_2 $ sono le prime due colonne allora $ u_3 $ deve appartenere al complemento ortogonale di $ {u_1,u_2} $ , che è uno spazio di dimensione 1, quindi potresti scrivere la terza colonna dipendente da un parametro reale $ t $ , poi fai la moltiplicazione $ U^{-1}AU $ e nella matrice che ti viene poni il terzo elemento della diagonale uguale all'autovalore e trovi $ t $ e hai finito... almeno credo... xD
P.S. Ora che ci penso... se $ u_1 $ e $ u_2 $ sono le prime due colonne allora $ u_3 $ deve appartenere al complemento ortogonale di $ {u_1,u_2} $ , che è uno spazio di dimensione 1, quindi potresti scrivere la terza colonna dipendente da un parametro reale $ t $ , poi fai la moltiplicazione $ U^{-1}AU $ e nella matrice che ti viene poni il terzo elemento della diagonale uguale all'autovalore e trovi $ t $ e hai finito... almeno credo... xD