18.01.2015 Views

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

8.6. Meto<strong>di</strong> classici<br />

e (k) = Ee (k−1)<br />

e (k−1) = Ee (k−2)<br />

e (k−2) = Ee (k−3)<br />

. = . . .<br />

e (2) = Ee (1)<br />

e (1) = Ee (0)<br />

Partendo, ora, dalla prima relazione e, andando a sostituire, ogni volta, a secondo membro, la relazione<br />

successiva, si ha:<br />

e (k) = Ee (k−1) = E(Ee (k−2) ) = E 2 e (k−2) = E 2 (Ee (k−3) ) = E 3 e (k−3) = ... = E k e (0)<br />

Osserviamo che E k rappresenta la potenza k della matrice E, cioè la E · E ···E k volte.<br />

Il metodo converge se e (k) → 0 per k → ∞. Poichè l’errore iniziale è arbitrario, si ha che lim k→∞ e (k) =<br />

lim k→∞ E k e (0) = 0 se e solo se lim k→∞ E k = 0.<br />

Per il teorema sulla convergenza <strong>di</strong> matrici (si veda pag. 117), questo si ha se e solo se ρ(E) < 1. Si può<br />

dunque stabilire il seguente teorema.<br />

Teorema 8.6.1 Lo schema iterativo<br />

x (k+1) = Ex (k) + q k ≥ 0<br />

converge qualunque sia il vettore iniziale x 0 al vettore x = Ex + q = A −1 b se e solo se ρ(E) < 1.<br />

Questo risultato lo si può provare facilmente, nel caso in cui la matrice <strong>di</strong> iterazione E abbia n autovalori<br />

<strong>di</strong>stinti e, quin<strong>di</strong>, possieda n autovettori linearmente in<strong>di</strong>pendenti, per cui l’errore iniziale e (0) si può scrivere<br />

come e (0) = α 1 u (1) + α 2 u (2) + ... + α n u (n) , dove α 1 ,α 2 ,...,α n sono delle costanti, mentre u (1) , u (2) ...u (n) sono<br />

gli autovettori associati, rispettivamente, a λ 1 , λ 2 ,...,λ n . Supponiamo che gli autovalori siano in or<strong>di</strong>ne decrescente<br />

in modulo, cioè: |λ 1 | > |λ 2 | > ... > |λ n |, per cui ρ(E) = |λ 1 |. In tal caso si può scrivere (ricordando<br />

che, se λ è un autovalore associato alla matrice A, con u un autovettore ad esso associato, si ha A k u = λ k u)<br />

e (k) = E k e (0) = E k (α 1 u (1) + α 2 u (2) + ... + α n u (n) )<br />

= α 1 E k u (1) + α 2 E k u (2) + ... + α n E k u (n)<br />

= α 1 λ k 1 u(1) + α 2 λ k 2 u(2) + ... + α n λ k n u(n)<br />

mettiamo in evidenza λ k 1<br />

(<br />

= λ k 1<br />

α 1 u (1) + α 2<br />

λ k 2<br />

λ k 1<br />

)<br />

u (2) λ k n<br />

+ ... + α n<br />

λ k u (n)<br />

1<br />

per k → ∞ si ha λk i<br />

λ k → 0 per i = 2,3,...,n<br />

1<br />

≈ λ k 1 α 1u (1)<br />

Perciò lim k→∞ e (k) = lim k→∞ λ k 1 α 1u (1) = 0 se e solo se λ k 1 → 0 e questo si ha se e solo se |λ 1| < 1. Ma |λ 1 | = ρ(E):<br />

ritroviamo il risultato visto prima.<br />

8.6.2 Controllo della convergenza<br />

Oltre a sapere che lo schema iterativo converge, è importante conoscere quanto velocemente lo schema<br />

converge. A tal proposito osserviamo che, in con<strong>di</strong>zioni asintotiche (per k → +∞) vale il seguente risultato 2<br />

‖e (k) ‖ ≈ ρ(E) k ‖e (0) ‖ (8.1)<br />

2 Questa relazione vale anche per matrici con autovalori non <strong>di</strong>stinti tra loro.<br />

119

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!