Decomposizione LU di una matrice quadrata

Documenti analoghi
Esercitazione di Calcolo Numerico 1 22 Aprile Determinare la fattorizzazione LU della matrice a 1 1 A = 3a 2 a 2a a a 2 A =

Il determinante. Calcolo del determinante di matrici particolari. matrici di ordine 2: sia. a11 a A = allora

I. Foglio di esercizi su vettori linearmente dipendenti e linearmente indipendenti. , v 2 = α v 1 + β v 2 + γ v 3. α v 1 + β v 2 + γ v 3 = 0. + γ.

Risoluzione di sistemi lineari sparsi e di grandi dimensioni

SISTEMI LINEARI. x y + 2t = 0 2x + y + z t = 0 x z t = 0 ; S 3 : ; S 5x 2y z = 1 4x 7y = 3

Esercizi svolti. delle matrici

Per esempio, una matrice 4 4 triangolare alta ha la forma. 0 a. mentre una matrice di ordine 4 triangolare bassa è del tipo

Corso di Calcolo Numerico

Corso di Matematica Generale M-Z Dipartimento di Economia Universitá degli Studi di Foggia ALGEBRA LINEARE. Giovanni Villani

Corso di Matematica per la Chimica

Metodi per la risoluzione di sistemi lineari

Corso di Matematica per la Chimica

LeLing12: Ancora sui determinanti.

Inversa di una matrice

Sistemi lineari - Parte Seconda - Esercizi

Anno 4 Matrice inversa

Appunti su Indipendenza Lineare di Vettori

1 se k = r i. 0 altrimenti. = E ij (c)

RIDUZIONE E RANGO , C = 2 5 1

Corso di Geometria BIAR, BSIR Esercizi 2: soluzioni

MATRICI E VETTORI APPROFONDIMENTO PER IL CORSO DI LABORATORIO DI INFORMATICA SARA POLTRONIERI

( ) TEORIA DELLE MATRICI. A. Scimone a.s pag 1

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.

Geometria BIAR Esercizi 2

ESERCIZI SULLE MATRICI

Vettori e matrici. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Applicazioni eliminazione di Gauss

Matrici. Matrici.h Definizione dei tipi. Un po di esercizi sulle matrici Semplici. Media difficoltà. Difficili

Esercizi svolti. risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale

Un sistema lineare si rappresenta in generale come

2x 5y +4z = 3 x 2y + z =5 x 4y +6z = A =

Sistemi lineari. 2x 1 + x 2 x 3 = 2 x 1 x 2 + x 3 = 1 x 1 + 3x 2 2x 3 = 0. x 1 x 2 x 3

SISTEMI LINEARI: APPROFONDIMENTI ED ESEMPI

Esercitazione 5: Sistemi a risoluzione immediata.

Sistemi II. Sistemi II. Elisabetta Colombo

Elementi di Algebra Lineare Matrici e Sistemi di Equazioni Lineari

Equivalentemente, le colonne di A sono linearmente indipendenti se e solo se

Le matrici. Sia K un campo con elemento neutro dell addizione 0 ed elemento neutro della moltiplicazione 1.

MATRICI E SISTEMI LINEARI

1 Risoluzione di sistemi lineari

ESERCIZI DI MATEMATICA DISCRETA ANNO 2006/2007

Matrici quadrate particolari

Inversa. Inversa. Elisabetta Colombo

TEMPUS PECUNIA EST COLLANA DI MATEMATICA PER LE SCIENZE ECONOMICHE FINANZIARIE E AZIENDALI

a + 2b + c 3d = 0, a + c d = 0 c d

misura. Adesso, ad un arbitrario punto P dello spazio associamo una terna di numeri reali x

ALGEBRA LINEARE PARTE II

Determinanti. Definizione ed esempi. Definizione ed esempi. Proprietà dei determinanti Rango di matrici

SISTEMI LINEARI, METODO DI GAUSS

Esercizi su algebra lineare, fattorizzazione LU e risoluzione di sistemi lineari

= elemento che compare nella seconda riga e quinta colonna = -4 In generale una matrice A di m righe e n colonne si denota con

Corso di Calcolo Numerico

Def. 1. Si chiamano operazioni elementari sulle righe di A le tre seguenti operazioni:

Esercizi 2. Soluzioni. 1. Siano dati i vettori 1 1, 1 R 3.

SPAZI VETTORIALI. Esercizi Esercizio 1. Sia V := R 3. Stabilire quale dei seguenti sottoinsiemi di V sono suoi sottospazi:

VETTORI NELLO SPAZIO ORDINARIO ,

Esercitazione di Matematica su matrici e sistemi lineari

Matrici elementari e fattorizzazioni

Volumi in spazi euclidei 12 dicembre 2014

Prodotto scalare e prodotto vettoriale. Elisabetta Colombo

1 SIGNIFICATO DEL DETERMINANTE

4 0 = 4 2 = 4 4 = 4 6 = 0.

ossia può anche essere localizzato univocamente sul piano complesso con la sua forma polare.

Esercizi sui sistemi di equazioni lineari.

Sistemi d equazioni lineari

Sistemi sovradeterminati

ALGEBRA 1 Secondo esonero 15 Giugno 2011 soluzioni

Il teorema di Rouché-Capelli

4 Sistemi di equazioni.

Metodi Matematici per l Economia anno 2017/2018 Gruppo B

Sistemi di equazioni lineari

2. Risolvere con il metodo di eliminazione di Gauss con pivoting parziale il seguente sistema lineare:

Sui determinanti e l indipendenza lineare di vettori

1 Il polinomio minimo.

Ricordiamo brevemente come possono essere rappresentate le rette nel piano: 1) mediante un'equazione cartesiana. = ( p 1

X Settimana = 0 R. = 0 R x, x R. + (x 0 R. ) x 0 R = = x 0 R

Punti di massimo o di minimo per funzioni di n variabili reali

Esercitazione di Calcolo Numerico 1 27 Maggio Calcolare la fattorizzazione P A = LU della matrice A =

Esercitazione 6 - Soluzione

Lezioni di Algebra Lineare. II. Aritmetica delle matrici e eliminazione di Gauss. versione ottobre 2008

Classificazione delle coniche.

x 1 Fig.1 Il punto P = P =

Metodi computazionali per i Minimi Quadrati

LEZIONE 4. { x + y + z = 1 x y + 2z = 3

LEZIONE i i 3

Autovalori ed autovettori di una matrice

08 - Matrici, Determinante e Rango

TEN Radici quadrate modulo p e modulo p k. Radici quadrate modulo p, con p > 2.

OPERAZIONI IN Q = + = = = =

Elementi di Algebra e di Matematica Discreta Numeri interi, divisibilità, numerazione in base n

Corso di Matematica II Anno Accademico Esercizi di Algebra Lineare. Calcolo di autovalori ed autovettori

Chi non risolve esercizi non impara la matematica.

Registro Lezioni di Algebra lineare del 15 e 16 novembre 2016.

Appunti sulla circonferenza

A m n B n p = P m p. 0 1 a b c d. a b. 0 a 0 c Il risultato e lo stesso solo nel caso in cui c = 0 e a = d.

1. Un sistema di m equazioni lineari in n incognite x 1,... x n aventi tutte termine noto nullo A =...

1 Definizione di sistema lineare omogeneo.

Esercitazioni di Algebra e Geometria

x1 + 2x 2 + 3x 3 = 0 nelle tre incognite x 1, x 2, x 3. Possiamo risolvere l equazione ricavando l incognita x 1 x 1 = 2x 2 3x 3 2r 1 3r 2 x 2 x 3

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Transcript:

Appendice al Cap. 5 Decomposizione LU di una matrice quadrata Una qualunque matrice quadrata M = {m ij } di ordine N, reale, invertibile, i cui minori principali siano tutti non nulli, si può sempre decomporre come M = LU, dove L = {α ij } e U = {β ij } sono matrici triangolari i cui elementi nulli si trovano, rispettivamente, in basso a sinistra (L : lower triangular) e in alto a destra (U : upper triangular) : α 11 0 0 0 β 11 β 12 β 13 β 1N α 21 α 22 0 0 0 β 22 β 23 β 2N L = α 31 α 32 α 33 0, U = 0 0 β 33 β 3N. (5.1)........ α N1 α N2 α N3 α NN 0 0 0 β NN Gli elementi α ij, β ij e m ij sono tra loro legati dal sistema di equazioni m ij = α ik β kj. (5.2) Il numero di equazioni che occorre soddisfare è pari al numero di elementi di L e U diversi da zero. Sovrapponendo le due matrici si vede facilmente che si tratta di N 2 + N dal momento che N 2 sono quelli della matrice L sommati a quelli della matrice U esclusa la diagonale ed N sono proprio questi ultimi. Siccome le relazioni a disposizione sono solo N 2 abbiamo la possibilità di scegliere arbitrariamente i valori di N elementi. Una scelta semplice consiste nell imporre che tutti i termini della diagonale di L siano pari a 1 : α ii = 1.

Spezziamo ora la somma al secondo membro del sistema (5.2)in tre termini : m ij = α ik β kj + α ii β ij + k=i+1 α ik β kj. (5.3) I termini della somma piú a destra sono tutti nulli perché per essi k > i e, in questo caso, α ik = 0. I termini con k > i sono infatti quelli per cui l indice di colonna è maggiore dell indice di riga, quindi sono quelli che nella matrice L si trovano nel triangolo a destra in alto. Portando a secondo membro m ij e a primo membro β ij, e ricordando che α ii = 1, l equazione (5.3) diventa β ij = m ij α ik β kj. (5.4) Quest equazione vale per ogni i j. Per i > j gli elementi β ij sono nulli. Usiamo ancora l espressione (5.3), interrompendo la prima sommatoria per k < j : j 1 m ij = α ik β kj + α ij β jj + k=j+1 α ik β kj. In questo caso il terzo addendo della somma è nullo perché sono nulli gli elementi β kj con k > j, cioè quelli il cui indice di riga è maggiore dell indice di colonna. In altre parole sono nulli i termini che si trovano nel triangolo in basso a sinistra. Riorganizzando i termini si ottiene dunque ( α ij = 1 m ij β jj ) j 1 α ik β kj. (5.5) È facile rendersi conto che l espressione sopra riportata vale per j > i, essendo tutti gli altri termini nulli. Per realizzare questo algoritmo basta iniziare a calcolare gli elementi della prima colonna di L e U. Infatti α 11 = 1 e, una volta calcolato β 11 = m 11, si può calcolare α 21 che richiede solo i primi termini per poter essere determinato. In effetti, scrivendo l equazione (5.5) per i = 2, j = 1 si ottiene α 21 = m 21 β 11, e cosí via. Una possibile realizzazione dell algoritmo in questione dunque è quella riportata nel Listato 5.1. In questo listato la sequenza delle operazioni da eseguire sugli elementi di matrice è stata opportunamente riscritta in modo da lasciare invariato il risultato, ottimizzando il codice.

1 /* assegna i valori della diagonale di L */ 2 for (i = 0; i < N; i++) { 3 alpha[i][i] = 1.; 4 } 5 6 /* calcola gli elementi fuori della diagonale */ 7 for (j = 0; j < N; j++) { 8 for (i = 0; i <= j; i++) { 9 beta[i][j] = m[i][j]; 10 for (k = 0; k <= i - 1; k++) { 11 beta[i][j] -= alpha[i][k]*beta[k][j]; 12 } 13 } 14 for (i = j + 1; i < N; i++) { 15 alpha[i][j] = m[i][j]; 16 for (k = 0; k <= j - 1; k++) { 17 alpha[i][j] -= alpha[i][k] * beta[k][j]; 18 } 19 alpha[i][j] /= beta[j][j]; 20 } 21 } Listato 5.1 Algoritmo di Crout per la decomposizione LU di una matrice quadrata. La decomposizione LU è uno strumento utilissimo nell algebra lineare. Innanzi tutto cosituisce un metodo alternativo a quello di Gauss per la soluzione dei sistemi di equazioni lineari. Il sistema Mx = y, infatti, si può scrivere come LUx = y. Se si definisce Ux = z, si può risolvere prima il sistema Lz = y, da cui si ricava z e quindi il sistema Ux = z da cui si ricava x. La soluzione dei due sistemi le cui matrici sono triangolari è banale, perché basta iniziare dalla riga con un solo elemento e salire o scendere con l indice di riga per trovare tutti i valori delle variabili (vedi anche il Paragrafo 5.4 del libro). Una volta decomposta una matrice M = LU, calcolarne il determinante è un operazione semplicissima. Il determinante di una matrice gode della proprietà per cui det(m) = det(l)det(u), ma det(l) = 1 e il determinante della matrice U è dato dalla produttoria degli elementi della sua diagonale. Infine osserviamo che l inversa della matrice M si trova come prodotto delle inverse delle matrici L ed U. Il calcolo dell inversa è semplificato dal fatto che l inversa di una matrice triangolare è ancora una matrice triangolare, perciò si ha che, se chiamiamo ᾱ ij

gli elementi della matrice L 1, ᾱ ij j > i. Scriviamo dunque il sistema di equazioni cui devono soddisfare gli elementi di L 1, tenendo conto di quest osservazione. α ik ᾱ kj + α ii ᾱ ij = δ ij. Nel caso in cui i = j gli addendi della sommatoria a sinistra sono tutti nulli, perché sono nulli i fattori α ik per i > k. Da quest osservazione si ricava che ᾱ ii = 1 α ii. Potremmo porre α ii = 1, ma per il momento manteniamo l espressione piú generale. Per i < j invece si deve avere che ᾱ ij = 1 α ik ᾱ kj α ii e i diversi termini si ottengono applicando iterativamente questa formula. Tutti gli elementi ᾱ kj necessari a calcolare ᾱ ij, infatti, sono già noti dal momento che k < i. Il codice che corrisponde al calcolo degli elementi di matrice inversa di L è riportato nel Listato 5.2, in cui la variabile invl rappresenta l inversa di L. 1 for (i = 0; i < N; i++) { 2 invl[i][i] = 1./alpha[i][i]; 3 for (j = 0; j < i; j++) { 4 invl[i][j] = 0; 5 for (k = 0; k <= i - 1; k++) { 6 invl[i][j] -= alpha[i][k] * invl[k][j]; 7 } 8 invl[i][j] /= alpha[i][i]; 9 } 10 } Listato 5.2 Calcolo dell inversa di L. Per calcolare l inversa di U basta osservare che la sua trasposta è una matrice triangolare sinistra, come L. Basta dunque applicare lo stesso algoritmo scambiando alpha con beta e gli indici i e k nel prodotto righe per colonne, come nel Listato 5.3. Questo spiega perché conviene lasciare nell espressione dell inversa di L gli elementi α ii : nel caso della matrice U gli elementi diagonali non sono uguali a 1 e non potremmo usare lo stesso codice. Nel listato abbiamo chiamato la variabile che contiene la matrice U 1 invu. 1 for (i = 0; i < N; i++) { 2 invu[i][i] = 1./beta[i][i];

3 for (j = 0; j < i; j++) { 4 invu[i][j] = 0; 5 for (k = 0; k <= i - 1; k++) { 6 invu[i][j] -= beta[k][i] * invu[k][j]; 7 } 8 invu[i][j] /= beta[i][i]; 9 } 10 } Listato 5.3 Calcolo dell inversa di U. Se conoscete le funzioni è facile scriverne una che sia utile per invertire entrambe le matrici, cosí come è utile, per verificare che non ci siano errori nel codice, scrivere una funzione che calcoli il prodotto righe per colonne tra due matrici e usarla per controllare che il prodotto di una matrice per la sua inversa sia uguale alla matrice unità.