Il calcolo della matrice inversa con algoritmo Gauss-Jordan
In questa pagina utilizzo l'algoritmo di eliminazione di Gauss-Jordan per calcolare la matrice inversa A-1 della matrice invertibile A.
Cos'è l'algoritmo di Gauss-Jordan? E' un metodo che permette di trasformare una matrice in una forma a scalini o a gradini.
Come calcolare la matrice inversa con Gauss-Jordan
Si affianca la matrice invertibile alla matrice identità, formando così un'unica matrice rettangolare AI.
Poi si applica l'algoritmo di Gauss-Jordan per trasformare la matrice AI in una matrice IA-1.
Nota. Le mosse consentite da Gauss per trasformare in i valori sulla diagonale principale sono le seguenti: lo scambio di posto tra due righe, la moltiplicazione di una riga per un numero reale k diverso da zero, la somma tra due righe. Le operazioni possono anche essere combinate tra loro. Poi si applica l'algoritmo Gauss-Jordan per azzerare gli altri valori.
Se questo è possibile, se riesco a spostare la matrice identità a sinistra, allora la matrice quadrata più a destra è la matrice inversa di A.
L'algoritmo di Gauss-Jordan definisce la sequenza delle operazioni da compiere.
Qual è la differenza tra l'algoritmo di Gauss-Jordan e il metodo di Gauss? In entrambi i casi bisogna spostare la matrice identità dalla sezione di destra a quella di sinistra per calcolare la matrice inversa. Tuttavia, con il metodo di Gauss posso scegliere liberamente quali operazioni compiere e in quale sequenza per calcolare "a mano" la matrice inversa. L'algoritmo di Gauss-Jordan, invece, definisce la sequenza di operazioni da compiere passo dopo passo. E' quindi più adatto per il calcolo computazionale automatico.
Un esempio pratico
Data la seguente matrice quadrata A voglio calcolare la sua matrice inversa A-1
Aggiungo sulla destra una matrice identità I di pari grado, ossia 2.
A questo punto devo trovare un modo, se esiste, per spostare la matrice identità sulla sinistra, usando le mosse di Gauss e l'algoritmo di Gauss-Jordan.
In questo modo ottengo il primo uno della diagonale principale sulla sinistra ( pivot ).
Ora devo azzerare i valori sottostanti al pivot, in questo caso il valore -1, applicando la formula dell'algoritmo di Gauss-Jordan.
Dove qj è l'elemento da azzerare (-1), pk è il pivot della colonna (1) e Ri e Rk sono rispettivamente tutti i valori della riga da azzerare e la riga del pivot.
Come prima cosa calcolo il rapporto qj/pk = -1
Quindi applico la formula R2 - (qj/pk)·R1 su tutti i valori della seconda riga, quella in cui c'è l'elemento da azzerare.
L'elemento tra parentesi (-1) è il rapporto qj/pk costante per tutte le colonne.
In questo modo ho azzerato i valori della colonna sotto il pivot.
La prima colonna è sistemata.
Passo alla seconda colonna e cerco di trasformare il secondo pivot della diagonale da 3 a 1.
Per farlo applico un'altra mossa di Gauss, moltiplico tutti i valori della seconda riga R2 per il numero reale 1/3.
Ho così ottenuto il secondo pivot, ossia il secondo uno sulla diagonale principale della matrice identità a sinistra.
Nella colonna del secondo pivot c'è soltanto un elemento diverso da zero, è il numero due sulla prima riga.
Per azzerarlo applico l'algoritmo di Gauss-Jordan R1 - (qj/pk)·Rk su tutti i valori della prima riga.
In questo caso il rapporto (qj/pk) è uguale a 2 perché qj=2 e pk=1.
Ora applico la formula R1 - (qj/pk)·R2 su tutti i valori della prima riga, quella in cui c'è l'elemento da azzerare.
L'elemento tra parentesi (2) è il rapporto qj/pk costante per tutte le colonne.
Così facendo ho azzerato il numero 2 sulla seconda colonna.
Con quest'ultima operazione ho completato la matrice identità sulla sinistra.
Pertanto, posso affermare che la matrice A è una matrice invertibile.
La matrice quadrata sulla destra della matrice identità è la matrice inversa A-1.
Quindi la matrice inversa di A è la seguente:
Per una rapida verifica basta moltiplicare la matrice A per la matrice inversa A-1.
Il prodotto AA-1 è la matrice identità I.
Nota. Ho svolto questo esercizio anche con gli altri metodi di calcolo della matrice inversa giungendo comunque allo stesso risultato finale.