Estratto del documento

Esempio

Algoritmo di sostituzione in avanti

Per i sistemi triangolari inferiori si usa l’algoritmo di eliminazione in avanti, ove si ricava x1 dalla

prima equazione, si sostituisce nella seconda e si ricava x2 e così via (algoritmo per righe).

Si può anche, dopo aver ricavato x1 dalla

prima equazione, sostituire in tutte le

successive ottenendo un sistema

triangolare inferiore di dimensione n−1; da

questo si ricava la prima incognita x2 dalla

prima equazione e si sostituisce nelle

successive equazioni e così via (algoritmo

di eliminazione in avanti per colonne).

La complessità è anch’essa O(n2/2)

Esemplo Sostituisco

E 1 attenendo

x1 1

Xe =

= :

4)x 5 1

1 1

x2

x

xz

1 + = Xz

1 = =

= ,

,

3xz

3 X3 7

+

x1 =

-

• Stabilità

Per entrambi gli algoritmi in tutte e due le versioni (per righe e per colonne) serve lo stesso

numero di operazioni, date da n(n−1)/2 prodotti e altrettante somme e n divisioni. Si dice che

sono algoritmi per cui servono O(n2/2) flops. Entrambi gli algoritmi sono metodi diretti, che, in

un numero finito di passi, in aritmetica esatta, calcolano la soluzione esatta del sistema.

Quando si usa aritmetica finita, invece di calcolare la soluzione esatta x del sistema Rx = b

oppure Lx = x si determina una soluzione approssimata z. Essa può essere interpretata come

soluzione esatta di un sistema perturbato:

(R + δR)z = b oppure (L + δL)z = b

1.3 Metodi diretti: generalizzazione

Nel caso generale possiamo distinguere diverse metodologie di risoluzione che vedono come

protagonisti diverse fattorizzazioni. Difatti l

’idea di base è fattorizzare la matrice A nel prodotto di due

matrici “semplici”, in modo che sia facile risolvere i due sistemi associati; in particolare si ha il metodo di

eliminazione di Gauss che può essere interpretato come un metodo di fattorizzazione.

Metodo di Eliminazione di Gauss

Questo metodo trasforma un sistema lineare generale in un sistema triangolare superiore equivalente,

che può poi essere risolto con la sostituzione all’indietro.

Il metodo di eliminazione gaussiana si basa sull’idea di ridurre il sistema Ax=b ad un sistema

-

equivalente (avente cio`e la stessa soluzione) della forma Rx=b, dove R è triangolare superiore e

-

b è un nuovo termine noto. Quest’ultimo sistema potrà essere risolto con il metodo delle

sostituzioni all’indietro. Indichiamo il sistema originario come A(1)x = b(1). Durante la riduzione

sfrutteremo in modo essenziale la proprietà per la quale sostituendo un’equazione del sistema

con la differenza tra l’equazione stessa ed un’altra, moltiplicata per una costante non nulla, si

ottiene un sistema equivalente (cioè con la stessa soluzione) a quello di partenza.

Algoritmo di eliminazione di Gauss

Consideriamo dunque una matrice A Rn×n, non singolare, e supponiamo che l’elemento

diagonale a11 sia diverso da zero. Introducendo i seguenti moltiplicatori:

Per consistenza con le notazioni precedentemente introdotte indicheremo con R la matrice triangolare

*

superiore A(n). Gli a vengono detti elementi pivotali e devono essere ovviamente tutti non nulli per

k = 1,... ,n− 1, per cui l’eliminazione di Gauss si può portare a termine (strategia diagonale)

xt

Inoltre per k = 1,... ,n−1, assumiamo che a 0 e definiamo il moltiplicatore:

Per ottenere un sistema triangolare superiore si ricorre all’uso delle trasformazioni elementari di

gauss

Trasformazione elementare di Gauss

Innanzitutto si introduce quella che è la trasformazione elementare di gauss per la quale:

Sia x con x1 ̸ = 0. Una trasformazione elementare di Gauss è una matrice triangolare inferiore

∈Rn

con 1 sulla diagonale tale che L1x = (x1,0,...,0)T con X=(x1,…,xn)

la

Solo I

> componente

I nulla

non

A questo punto il MEG può essere interpretato come metodo di fattorizzazione e usando le

trasformazioni elementari di Gauss si può costruire quella che è la fattorizzazione LR

Fattorizzazione LR

si fattorizza la matrice A nel prodotto di una matrice triangolare inferiore per una triangolare

superiore; se A= LR, si ha:

Questo richiede O(n2) operazioni una volta ottenuta la fattorizzazione

Data A , si vogliono trovare le condizioni per cui A si può fattorizzare nel prodotto di una matrice

∈Rn×n 2

triangolare inferiore L con una triangolare superiore R. Poichè deve essere A= LR occorre imporre n

uguaglianze per determinare n2 + n parametri (numero di elementi non nulli di L e di R).

Pertanto occorre fissare n elementi, attribuendo ad essi un valore arbitrario.

In genere, per convenzione, si fissano uguali a 1 gli elementi diagonali della matrice triangolare inferiore o

superiore. In realtà si cerca la fattorizzazione A= LDU

dove L è una matrice triangolare inferiore con elementi diagonali 1, D è una matrice diagonale, U è una

matrice triangolare superiore con elementi diagonali 1. = like

aij divij

rij =

- lijdj

Dij =

Condizioni per l’esistenza della fattorizzazione LR

Complessità Computazionale

La fattorizzazione di Gauss ha una complessit`a di O( ) somme e prodotti. Il calcolo del determinante è

O(n) dopo la fattorizzazione.

Inoltre ci sono due classi di matrici per il cui il metodo di Gauss si può portare a termine

senza che nessun perno o pivot si annulli:

• le matrici strettamente diagonali dominanti per righe (per colonne) o le matrici non singolari diagonali

dominanti per righe (o per colonne);

• le matrici simmetriche definite positive.

1.4 Pivoting e stabilità

Un perno nullo ferma l’algoritmo di Gauss. Inoltre un perno molto piccolo può causare un’amplificazione

degli errori di arrotondamento, rendendo l’algoritmo instabile. Per questo motivo occorre ricorrere alla

tecnica di ricerca del perno per il quale si adoperano delle strategie di pivoting che riordinano le righe e/o le

colonne della matrice per scegliere un perno ”grande” e migliorare la stabilitá dell’algoritmo. Inoltre

scambiare tra loro righe e colonne permette di avere elementi pivotali non nulli

Strategia di pivoting parziale

Al passo k, si sceglie come perno l’elemento di modulo massimo nella colonna k (dal rigo k in giù ) e si

scambia la riga corrente con quella che contiene il perno scelto. Questo garantisce che i moltiplicatori siano in

quella dell’algoritmo con

modulo minori o uguali a 1 (|mik |≤1 ). La complessità computazionale è uguale a A

strategia diagonale. In più vengono eseguiti una serie di confronti per determinare i perni, pari a O( ).

Questa strategia è più usata rispetto al pivoting totale per la sua efficienza computazionale.

Strategia di pivoting totale

Al passo k, si cerca l’elemento di modulo massimo nell’intera sottomatrice restante (dalla riga k e colonna k in

poi) e si scambiano sia le righe che le colonne per portare il perno in posizione diagonale. Richiede un

riordinamento finale delle incognite. Ha un costo computazionale pi`u elevato e viene utilizzato solo in casi

particolari.

Pertanto lo scopo del pivoting è:

1. Permettere all’algoritmo di eliminazione di Gauss di essere completato anche su matrici dove i perni

diagonali potrebbero essere nulli.

2. Rendere l’algoritmo di fattorizzazione pi`u stabile limitando l’amplificazione degli errori di arrotondamento.

Residuo

Si definisce residuo il vettore r = b−Aw , dove w è il vettore calcolato. Con la strategia che sceglie

come perno l’elemento di modulo massimo sulla colonna, il residuo resta piccolo.

1.4 stabilità dei metodi diretti

Se esistono costanti positive a e b indipendenti dagli elementi di A e dalla sua dimensione tali

che allora la fattorizzazione LR si dice stabile in senso forte.

Ilijka /zijkb

,

Contrariamente se le costanti a,b dipendono dall’ordine di A si dice stabile in senso debole.

L’eliminazione di Gauss con pivoting parziale `e stabile in senso debole perch´e gli elementi

di R possono crescere esponenzialmente con la dimensione n. Contrariamente quello totale è stabile in

senso forte

1.5 condizionamento dei sistemi lineari

Quando risolviamo un sistema lineare Ax=b, uno degli aspetti fondamentali è di quanto la soluzione

dipenda dai dati iniziali. Se cambiano la matrice A o quanto cambia la soluzione x? Per capire questo,

introduciamo il concetto di condizionamento che può essere di due tipi:

Problemi Mal Condizionati: Un sistema lineare è mal condizionato se piccole perturbazioni

nei dati iniziali (matrice A o termine noto b) causano grandi variazioni nella soluzione.

Geometricamente, le rette (o piani) sono quasi parallele.

• problemi ben condizionati: Un sistema lineare è ben condizionato se piccole perturbazioni

nei dati iniziali (matrice A o termine noto b) causano piccole variazioni nella soluzione.

CirhXn

Si definisce numero di condizionamento di una matrice A la quantità:

~ M(A) -

11

IIA-

11 All Fornisce una stima del rapporto tra l’errore

= . relativo nella soluzione e l’errore relativo

Questo se A non è singolare nei dati.

Si può estendere la definizione al caso di matrici qualunque:

Il numero di condizione è il rapporto tra la perturbazione massima e la pertubazione minima non nulla

che ogni vettore x subisce per effetto della trasformazione lineare associata ad A.

∈Rn

– Se µ(A) A `e mal condizionata; se µ(A) ≈1, A `e ben condizionata.

≫1,

– Il numero di condizionamento indica quanto una matrice è ”vicina” alla singolarità

– Per la norma euclidea, µ2(A) = σmax/σmin, dove σ sono i valori singolari di A (radici quadrate degli autovalori

T

di A A).

– Attenzione: Un determinante piccolo non significa necessariamente che una matrice sia mal condizionata, e

viceversa.

Residuo vs. Errore: Un residuo piccolo (r = b−Aw), w soluzione perturbata di un sistema perturbato, non

implica necessariamente che la soluzione calcolata wsia vicina alla soluzione esatta x. L’errore assoluto

1 1

e= x−w é legato al residuo da e= A r. Se ||A || è grande, anche un piccolo residuo può portare a un

- -

grande errore. V

il residuo è piccolo ma l’errore è grande: questa è una caratteristica dei sistemi mal condizionati.

1.6 Metodi iterativi per sistemi lineari

I metodi iterativi a differenza dei metodi diretti consentono di trovare soluzioni approssimate di un

generico sistema lineare di questo tipo:

Pertanto

Anteprima
Vedrai una selezione di 4 pagine su 13
Sistemi lineari Pag. 1 Sistemi lineari Pag. 2
Anteprima di 4 pagg. su 13.
Scarica il documento per vederlo tutto.
Sistemi lineari Pag. 6
Anteprima di 4 pagg. su 13.
Scarica il documento per vederlo tutto.
Sistemi lineari Pag. 11
1 su 13
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche MAT/08 Analisi numerica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher China- di informazioni apprese con la frequenza delle lezioni di Calcolo numerico e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi della Campania "Luigi Vanvitelli" o del prof Crisci Serena.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community