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 ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
4. ZERI DI FUNZIONE<br />
Per esempio, per calcolare 2 ≈ 1.41421356237310, sapendo che il valore che dobbiamo approssimare è<br />
compreso tra 1 e 2, possiamo partire da x 0 = 1.5, ottenendo:<br />
x 0 = 1.5<br />
x 1 = 1 2 (1.5 + 2<br />
1.5 ) = 1.41666667<br />
x 2 = 1 2 (1.41666667 + 2<br />
1.41666667 ) = 1.41421569<br />
x 3 = 1 2 (1.41421569 + 2<br />
1.41421569 ) = 1.41421356<br />
Il metodo usato dai Babilonesi non è altro che il metodo <strong>di</strong> Newton-Raphson (che vedremo più avanti)<br />
per trovare gli zeri della funzione f (x) = x 2 − b.<br />
I meto<strong>di</strong> numerici <strong>di</strong>scussi in questo Capitolo servono per trovare approssimazioni numeriche ad<br />
equazioni del tipo f (x) = 0.<br />
4.2 Metodo delle Bisezioni<br />
Sia data una funzione f continua in un intervallo [a,b], con f (a) e f (b) che assumono valori <strong>di</strong> segno<br />
opposto. Allora, per il teorema del Valore Interme<strong>di</strong>o (si veda il Teorema 2.5.3 con K = 0), esiste almeno un<br />
punto ξ ∈]a,b[ tale che f (ξ) = 0.<br />
Assumiamo, per semplicità che ci sia una sola ra<strong>di</strong>ce ξ nell’intervallo ]a,b[ (nel caso ci sia più <strong>di</strong> una<br />
ra<strong>di</strong>ce, la procedura che ora descriviamo vale sempre, e ci permette <strong>di</strong> calcolare una <strong>di</strong> queste ra<strong>di</strong>ci).<br />
Il metodo delle bisezioni (detto anche metodo <strong>di</strong>cotomico) si chiama così perchè, ad ogni passo, viene<br />
<strong>di</strong>mezzato l’intervallo precedente, cercando in tal modo <strong>di</strong> racchiudere la ra<strong>di</strong>ce ξ in sottointervalli sempre<br />
più piccoli.<br />
G Si pone a 1 = a e b 1 = b. Si prende il punto me<strong>di</strong>o dell’intervallo [a 1 ,b 1 ], c 1 = a 1 + b 1<br />
.<br />
G Se f (c 1 ) = 0 allora abbiamo trovato la ra<strong>di</strong>ce dell’equazione, altrimenti si va a controllare il segno <strong>di</strong><br />
f (c 1 ).<br />
– Se f (c 1 ) e f (a 1 ) hanno lo stesso segno, allora ξ si trova nell’intervallo ]c 1 ,b 1 [ (applicando <strong>di</strong> nuovo<br />
il teorema del Valore Interme<strong>di</strong>o). In tal caso porremo a 2 = c 1 e b 2 = b 1 .<br />
– Se, invece, f (c 1 ) e f (b 1 ) hanno lo stesso segno, allora ξ si trova nell’intervallo ]a 1 ,c 1 [ In tal caso<br />
porremo a 2 = a 1 e b 2 = c 1 .<br />
G Riapplichiamo questa procedura appena descritta sul sottointervallo [a 2 ,b 2 ]<br />
G Fermiamo il proce<strong>di</strong>mento ad una certa iterazione n, se f (c n ) = 0 o se l’ampiezza del sottointervallo<br />
è sufficientemente piccola, cioè b n − a n<br />
≤ tol l dove tol l è una certa tolleranza prefissata. In tal caso<br />
2<br />
assumiamo c n come approssimazione della ra<strong>di</strong>ce ξ.<br />
Osserviamo che, ad ogni passo, viene <strong>di</strong>mezzato l’intervallo in cui si trova la ra<strong>di</strong>ce ξ, da cui<br />
|ξ − c n | ≤ b − a<br />
2 n .<br />
Da questa relazione, si può determinare il numero <strong>di</strong> iterazioni n necessarie per calcolare un’approssimazione<br />
della ra<strong>di</strong>ce ξ entro una certa tolleranza tol l richiesta. Infatti<br />
b − a<br />
2 n ≤ tol =⇒ |ξ − c n | ≤ tol<br />
2<br />
Ma<br />
( ) b − a<br />
b − a<br />
2 n ≤ tol ⇐⇒ 2 n ≥ b − a log<br />
tol<br />
=⇒ n ≥<br />
.<br />
tol<br />
log(2)<br />
L’algoritmo <strong>di</strong> bisezione può essere descritto nel modo seguente (sotto forma <strong>di</strong> pseudo-co<strong>di</strong>ce). Se il<br />
metodo non converge (perchè, ad esempio, la funzione che abbiamo scelto non assume segno opposto agli<br />
38