Riduzione a Scala e Algoritmo di Gauss-Jordan
È un metodo senz'altro efficiente e pratico da implementare in un calcolatore, tuttavia (e questa è un'opinione personale), richiede dei notevoli calcoli numerici e spesso l'utilizzo dei determinanti e la Regola di Cramer sono migliori se dobbiamo risolvere il sistema a mano senza l'impiego di un calcolatore.
Definizione: Una matrice si dice a scala se è siffatta
Gli * indicano che può esserci qualsiasi cosa e i
(quindi tutti non nulli) sono gli r pivot della matrice a scala.
Il sistema lineare associato si dice sistema a scala.
La matrice a scala ed il Metodo di Gauss-Jordan non è altro che la generalizzazione di quello che avevamo visto brevemente per le matrici quadrate. Prima di studiarne le proprietà teoriche, vediamo come funziona e facciamo qualche esempio pratico per fissare le idee.
Come anticipato prima, il metodo di Gauss-Jordan è molto simile all'eliminazione di Gauss per le matrici quadrate, cioè è un metodo che tramite operazioni elementari (quali lo scambio di righe, combinazioni lineari, ecc...) trasforma una matrice qualsiasi
in una matrice a scala
e di conseguenza trasforma il generico sistema Ax = b in un sistema a scala equivalente Sx = c.
Partendo da un sistema lineare Ax = b, il metodo consiste nei seguenti passaggi:
- Se A è la matrice nulla, abbiamo ovviamente finito.
- Se A non è la matrice nulla, consideriamo la prima colonna che presenta un coefficiente non nullo (se necessario è possibile scambiare di posto le righe della matrice per avere tale coefficiente il più a sinistra possibile e nella prima riga, all'inizio della matrice). Sia Aj questa colonna e chiamiano tale valore non nullo pivot, in questo caso A1,j = p1
- Rendiamo nulli tutti i valori della colonna j-esima sommando alle righe una opportuna combinazione lineare.
- Andiamo avanti considerando la colonne successiva ad Aj della riga 2 fino a che non troviamo una colonna Aj + a avente coefficiente non nullo. Sia p2 tale valore e procediamo come prima fino alla riga h
- Se dalla riga h + 1 in poi sono tutte nulle o h è l'ultima riga, abbiamo finito. Altrimenti continuiamo il procedimento.
- Una volta ottenuta una matrice a scala, ripetiamo il procedimento all'indietro per ottenere le soluzioni.