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.

11. DIFFERENZIAZIONE NUMERICA ED EQUAZIONI ALLE DERIVATE ORDINARIE<br />

Ricaviamo la formula, detta a 5 punti perchè, oltre al punto in cui vogliamo approssimare la derivata, ne<br />

consideriamo altri quattro.<br />

La formula a 5 punti è data da<br />

f ′ (x 0 ) ≈ 1 (<br />

f (x0 − 2h) − 8f (x 0 − h) + 8f (x 0 + h) − f (x 0 + 2h) )<br />

12h<br />

L’errore <strong>di</strong> troncamento <strong>di</strong>pende da h 4 .<br />

Altre tecniche <strong>di</strong> <strong>di</strong>fferenziazione numerica sono basate sull’interpolazione polinomiale <strong>di</strong> Lagrange (se<br />

p(x) approssima f (x) allora p ′ (x) approssima f ′ (x)) o su un proce<strong>di</strong>mento <strong>di</strong> estrapolazione <strong>di</strong> Richardson<br />

(simile a quello che abbiamo visto per le formule <strong>di</strong> integrazione numerica). Il <strong>di</strong>scorso si estende, inoltre,<br />

per approssimare derivate <strong>di</strong> or<strong>di</strong>ne superiore.<br />

Nell’applicare queste formule, dobbiamo ricordarci che, oltre all’errore <strong>di</strong> troncamento dovuto al tipo <strong>di</strong><br />

approssimazione fatto, c’è anche l’errore <strong>di</strong> arrotondamento. Nell’esempio 3.6.4, avevamo visto come, per<br />

piccoli valori <strong>di</strong> h, il fenomeno <strong>di</strong> cancellazione numerica portava a crescite <strong>degli</strong> errori.<br />

La scelta <strong>di</strong> h dovrebbe, perciò, <strong>di</strong>pendere, dall’or<strong>di</strong>ne dell’errore <strong>di</strong> troncamento (che conosciamo) e<br />

da una maggiorazione sul termine d’errore d’arrotondamento (valore che in genere non conosciamo). Per<br />

evitare che domini l’errore <strong>di</strong> arrotondamento (che può portare al fenomeno <strong>di</strong> cancellazione numerica) è<br />

importante non prendere h troppo vicino alla precisione <strong>di</strong> macchina.<br />

Esempio<br />

Esempio 11.2.1 Ripren<strong>di</strong>amo l’esempio 3.6.4 per confrontare le <strong>di</strong>verse formule che abbiamo introdotto.<br />

Dobbiamo derivare f (x) = sin(x) in x 0 = 1.2. Per confrontare le <strong>di</strong>verse formule, partiamo da h = 1 e<br />

lo riduciamo fino ad arrivare a h = 10 −12 . In Figura 11.1, in un grafico semilogaritmico, confrontiamo<br />

gli errori assoluti ottenuti dalle varie formule. Possiamo osservare che le formule forward e backward<br />

danno risultati confrontabili tra loro. La formula centrata porta a errori notevolmente inferiori rispetto<br />

alle prime due formule e la formula a 5 punti riduce ancora l’errore. Per la scelta <strong>di</strong> h che abbiamo fatto,<br />

l’errore si riduce senza mostrare il fenomeno <strong>di</strong> cancellazione numerica.<br />

11.3 Sulle equazioni <strong>di</strong>fferenziali or<strong>di</strong>narie<br />

Passiamo ora a stu<strong>di</strong>are le equazioni <strong>di</strong>fferenziali or<strong>di</strong>narie.<br />

Vogliamo trovare una funzione y(t) che sod<strong>di</strong>sfi la seguente equazione <strong>di</strong>fferenziale or<strong>di</strong>naria ( ODE:<br />

Or<strong>di</strong>nary Differential Equation) del primo or<strong>di</strong>ne:<br />

dy<br />

= f (t, y),<br />

dt a<br />

≤ t ≤ b<br />

La funzione f (t, y) è assegnata. Ci riferiamo a t come alla variabile in<strong>di</strong>pendente. Dobbiamo trovare quella<br />

funzione y = y(t) tale che la sua derivata prima y ′ = y ′ (t) = dy(t) coincida con f (t, y(t)).<br />

dt<br />

168

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

Saved successfully!

Ooh no, something went wrong!