Consideriamo il seguente sistema lineare A x = b la cui soluzione e' [1,2,3]'. 2x1 + x2 = 4 x2 + x3 = 5 3x1 + x2 + 4x3 = 17 In forma matriciale [A|b] = [ 2 1 0 | 4 ] [ 0 1 1 | 5 ] [ 3 1 4 | 17 ] =============================================== METODO DI ELIMINAZIONE GAUSSIANA SENZA PIVOTING =============================================== Riga_nuova_j = Riga_vecchia_j - coeff_j * Riga_rifermento_i coeff_j = Riga_vecchia_j[j][i]/Riga_rifermento_i[i][i] [0 1 1 | 5] = [0 1 1 | 5] - (0/2)*[2 1 0 | 4] [0 -1/2 4 |11] = [ 3 1 4 | 17 ] - (3/2)*[2 1 0 | 4] Sistema 1 iter -------------- [2 1 0 | 4 ] [0 1 1 | 5 ] [0 -1/2 4 | 11 ] [0 0 9/2 | 27/2]=[0 -1/2 4 | 11 ] - (-1/2/1)*[0 1 1 | 5 ] Sistema 2 iter -------------- [2 1 0 | 4 ] --> 2x1 +x2 = 4 [0 1 1 | 5 ] --> x2 +x3 = 5 [0 0 9/2 | 27/2] --> 9/2 x3 = 27/2 Fase di risoluzione all'indietro -------------------------------- x3 = 27/2/(9/2) = 3 x2 = 5-x3 = 5-3 = 2 x1 = (4-x2)/2 = (4-2)/2 = 1 Soluzione [1] [2] [3] Determinante: 2*1*9/2 = 9 verifica : 8-(-1) = 9 ================================================== METODO DI ELIMINAZIONE GAUSSIANA PIVOTING PARZIALE ================================================== Cerco l'elemento massimo in modulo sulla sottodiagonale s = 1 In forma matriciale [A|b] = [ 2 1 0 | 4 ] [ 0 1 1 | 5 ] [ 3 1 4 | 17 ] Scambio 3 riga con la riga 1 s=s*(-1) = -1 [ 3 1 4 | 17 ] [ 0 1 1 | 5 ] [ 2 1 0 | 4 ] [ 0 1 1 | 5 ] = [ 0 1 1 | 5 ] - (0/3)*[ 3 1 4 | 17 ] [ 0 1/3 -8/3 | -22/3] = [ 2 1 0 | 4 ] - (2/3)*[ 3 1 4 | 17 ] Sistema 1 iter -------------- [ 3 1 4 | 17 ] [ 0 1 1 | 5 ] [ 0 1/3 -8/3 | -22/3] Nessun scambio s = -1 [0 0 -3 | -9 ] = [ 0 1/3 -8/3 | -22/3] - (1/3/1)*[ 0 1 1 | 5 ] Sistema 2 iter -------------- [ 3 1 4 | 17 ] --> 3x1 +x2 +4x3 = 17 [ 0 1 1 | 5 ] --> x2 +x3 = 5 [ 0 0 -3 | -9 ] --> -3x3 = -9 Fase di risoluzione all'indietro -------------------------------- x3 = -9/(-3) = 3 x2 = 5-x3 = 5-3 = 2 x1 = (17-x2-4x3)/3 = 1 Soluzione [1] [2] [3] Determinante: 3*1*(-3)*s = 9 ================================================ METODO DI ELIMINAZIONE GAUSSIANA PIVOTING TOTALE ================================================ Cerca l'elemento massimo in modulo su tutta la sottomatrice In forma matriciale [A|b] = [ 2 1 0 | 4 ] [ 0 1 1 | 5 ] [ 3 1 4 | 17 ] vettore variabili = [1,2,3] L'elemento max in modulo in posizione riga 3 col 3 Scambio righe la 3 con la 1 [ 3 1 4 | 17 ] [ 0 1 1 | 5 ] [ 2 1 0 | 4 ] Scambio di colonne la 3 con la 1 [ 4 1 3 | 17 ] [ 1 1 0 | 5 ] [ 0 1 2 | 4 ] vettore variabili = [3,2,1] Applico Gauss con riferimento riga 1: [ 0 3/4 -3/4 | 3/4] = [ 1 1 0 | 5 ] - (1/4)*[ 4 1 3 | 17 ] [ 0 1 2 | 4 ] = [ 0 1 2 | 4 ] - (0/4)*[ 4 1 3 | 17 ] Sistema 1 iter -------------- [ 4 1 3 | 17 ] [ 0 3/4 -3/4 | 3/4 ] [ 0 1 2 | 4 ] vettore variabili = [3,2,1] L'elemento max in modulo in posizione riga 3 col 3 Scambio righe la 3 con la 2 [ 4 1 3 | 17 ] [ 0 1 2 | 4 ] [ 0 3/4 -3/4 | 3/4 ] Scambio di colonne la 3 con la 2 [ 4 3 1 | 17 ] [ 0 2 1 | 4 ] [ 0 -3/4 3/4 | 3/4 ] vettore variabili = [3,1,2] Applico Gauss con riferimento riga 2: [0 0 9/8 | 9/4 ][ 0 -3/4 3/4 | 3/4 ] - (-(3/4) / 2)*[ 0 2 1 | 4 ] 3/4+3/8*1 = 6/8+3/8 = 9/8 3/4+3/8*4 = 3/4+6/4 = 9/4 Sistema 2 iter -------------- [ 4 3 1 | 17 ] [ 0 2 1 | 4 ] [ 0 0 9/8 | 9/4 ] x3,x1,x2 vettore variabili = [3 , 1,2] Fase di risoluzione all'indietro -------------------------------- x3p = 9/4 / (9/8) = 2 x2p = (4-x3p)/2 = (4-2)/2 = 1 x1p = (17-3*x2p-x2p)/4 = (17-3-2)/4 = 3 Permutazione delle variabili ---------------------------- soluzione x1 = x2p = 1 x2 = x3p = 2 x3 = x1p = 3 ============ GAUSS-JORDAN ============ Per l'inversa di una matrice (versione senza scambi) In forma matriciale [A|I] = [ 2 1 0 | 1 0 0 ] [ 0 1 1 | 0 1 0 ] [ 3 1 4 | 0 0 1 ] Dividere la riga di riferimento per elemento diagonale [ 2 1 0 | 1 0 0 ] = [ 2 1 0 | 1 0 0 ]/2 ottengo ------- [ 1 1/2 0 | 1/2 0 0 ] [ 0 1 1 | 0 1 0 ] [ 3 1 4 | 0 0 1 ] Passo di Gauss [ 0 1 1 | 0 1 0 ] = [ 0 1 1 | 0 1 0 ] -(0/1)*[ 1 1/2 0 | 1/2 0 0 ] [ 0 -1/2 4 | -3/2 0 1] = [ 3 1 4 | 0 0 1 ] - (3/1)*[ 1 1/2 0 | 1/2 0 0 ] ottengo ------- [ 1 1/2 0 | 1/2 0 0 ] [ 0 1 1 | 0 1 0 ] [ 0 -1/2 4 | -3/2 0 1 ] Considero riga 2 ---------------- Rendo 1 l'elemento diagonale passo di Gauss [1 0 -1/2 | 1/2 -1/2 0] = [ 1 1/2 0 | 1/2 0 0 ] - ((1/2)/1)*[ 0 1 1 | 0 1 0 ] [ 0 0 9/2 | -3/2 1/2 1 ] = [ 0 -1/2 4 | -3/2 0 1 ]- ((-1/2)/1)*[ 0 1 1 | 0 1 0 ] ottengo ------- [ 1 0 -1/2 | 1/2 -1/2 0 ] [ 0 1 1 | 0 1 0 ] [ 0 0 9/2 | -3/2 1/2 1 ] Rendo 1 la 3 eq [0 0 1 | -6/9 1/9 2/9] = [ 0 0 9/2 | -3/4 1/2 1 ] / (9/2) -3/2*(2/9) = -3/9 1/2*(2/9) = 1/9 ottengo ------- [ 1 0 -1/2 | 1/2 -1/2 0 ] [ 0 1 1 | 0 1 0 ] [ 0 0 1 | -3/9 1/9 2/9 ] passo di Gauss 1a riga [1 0 0 | 3/9 -5/9 1/9] = [ 1 0 -1/2 | 1/2 -1/2 0 ] -((-1/2)/1)*[ 0 0 1 | -3/9 1/9 2/9 ] 1/2+1/2*(-3/9) = 1/2-3/18 = 6/18 = 1/3 = 3/9 -1/2+1/2*1/9 = -1/2+1/18 = -8/18 = -4/9 2a riga [ 0 1 0 | 3/9 8/9 -2/9] = [ 0 1 1 | 0 1 0 ] - (1/1)*[ 0 0 1 | -3/9 1/9 2/9 ] 1-1/9 = 8/9 ottengo ------- [ 1 0 0 | 3/9 -4/9 1/9 ] [ 0 1 0 | 3/9 8/9 -2/9 ] [ 0 0 1 | -3/9 -1/9 2/9 ] Ottengo l'inversa ----------------- [ 3/9 -4/9 1/9 ] [ 3/9 8/9 -2/9 ] [ -3/9 -1/9 2/9 ] [ 3 -4 1 ] [ 2 1 0 ] [ (6+3) (3-4+1) (-4+4) ] 1/9 [ 3 8 -2 ] * [ 0 1 1 ] = 1/9[ (6-6) (3+8-2) (8-8) ] [ -3 1 2 ] [ 3 1 4 ] [ (-6+6) (-3+1+2) (1+8) ]