Motivazioni Metodo di eliminazione di Gauss Molti problemi si possono rappresentare mediante un sistema lineare La soluzione di un sistema lineare costituisce un sottoproblema di moltissime applicazioni del calcolo scientifico Obiettivo Il problema Sistemi lineari Studiare algoritmi per il calcolo della soluzione numerica di sistemi lineari Numeri di macchina 1 Ipotesi su A Teorema di esistenza e unicità Metodi per il calcolo della soluzione SISTEMI “FACILI”: diagonali DIRETTI: con un numero finito di operazioni si calcola la soluzione. ITERATIVI: si costruisce una successione di vettori che all’infinito si avvicina alla soluzione del sistema. 2 SISTEMI “FACILI”: triangolari inferiore Algoritmo di sostituzione all’avanti superiore Si può dimostrare che l’inversa di una matrice triangolare inferiore (superiore) è ancora una matrice triangolare inferiore (superiore) Algoritmo di sostituzione all’indietro Complessità computazionale degli algoritmi di sostituzione all’avanti e all’indietro Divisioni e prodotti Somme 3 Sistemi qualunque Calcolo dell’ inversa: Sistemi qualunque Metodo di Cramer : esempio (floating point con =10, t=6) Complessità computazionale del metodo di Cramer Metodo di eliminazione * + Se 1 nsec per eseguire il prodotto e 4 Metodo di eliminazione Metodo di eliminazione * * + + Metodo di eliminazione Strategia: Costruire un sistema equivalente più semplice Combinazioni lineari delle righe della matrice (= equazioni del sistema) I coefficienti della combinazione lineare si dicono moltiplicatori Sistema triangolare equivalente (= ha le stesse soluzioni del sistema iniziale) 5 Cambiamo punto di vista Le combinazioni lineari delle righe di una matrice si possono esprimere come prodotti matrice-matrice. Esempio Esempi 1. 2. Proprietà delle matrici di trasformazione Metodo di eliminazione Hanno determinante uguale a 1. Sono matrici non singolari. 6 Metodo di eliminazione Trasformazioni di Gauss Trasformazione elementare di Gauss applicata alla 1° colonna 1° Passo 2° Passo 7 k° Passo Se Dopo n-1 passi Se Gauss Dopo n-1 passi la trasformazione elementare di è definita e dove triangolare superiore 8 Si dimostra che: Dimostrazione (1/4) Dimostrazione (2/4) Dimostrazione (3/4) Si verifica k-esimo elemento di 9 Dimostrazione (4/4) Fallimento dell’algoritmo L’ algoritmo è ben definito se tutti i perni sono non nulli Esistono matrici non singolari su cui l’algoritmo fallisce, poiché si incontrano perni nulli. Condizione sufficiente Se i minori principali di A sono non nulli, tranne al più l’ultimo, allora l’algoritmo è ben definito Definizione: il k-esimo minore principale di A è Dimostrazione per induzione(1/2) Per k=1 Per k=2 poiché la trasformazione di Gauss è triangolare si ha l’uguaglianza Inoltre si dimostra che 10 Riassumendo Dimostrazione per induzione(2/2) Hp di induzione: Teorema Se tutti i minori principali di A sono non nulli, tranne al più l’ultimo, allora esistono una matrice L triangolare inferiore con diagonale unitaria ed una matrice triangolare superiore R tali che Th: poiché le trasformazione di Gauss è triangolare si ha l’uguaglianza Inoltre Th Unicità Se A è non singolare e ammette la fattorizzazione LR, allora essa è unica Dimostrazione: FATTORIZZAZIONE DI A Viceversa Se A ammette la fattorizzazione, allora tutti i minori principali sono non nulli. = triangolare superiore triangolare inferiore con diagonale unitaria diagonale unitaria 11 Algoritmo di fattorizzazione di Gauss Si sovrascrivono gli elementi della matrice; Elemento perno o pivot Complessità computazionale della fattorizzazione di Gauss Complessità computazionale Passo Calcolo moltiplicatori Divisioni Aggiornamento degli Somme e prodotti 1 2 k n-1 1 1 Soluzione di un sistema Sostituzione all’avanti Sostituzione all’indietro 12 Esempio 13