Metodo delle differenze finite

Da Wikipedia, l'enciclopedia libera.

Il metodo delle differenze finite è un metodo per risolvere numericamente equazioni differenziali, prevalentemente ordinarie anche se sono spesso usate come schema di avanzamento nel tempo per problemi alle derivate parziali. È di gran lunga il metodo più semplice e intuitivo tra tutti e permette anche una facile analisi di convergenza.

L'idea di base di questi metodi è di sostituire alle derivate i rapporti incrementali, dato che il limite di questi è appunto la derivata. Ad esempio si potrebbe approssimare

u'(x)\, \frac{u(x+h)-u(x)}{h}

dove h è un parametro di discretizzazione (positivo). È possibile anche approssimare con il rapporto incrementale all'indietro

u'(x)\, \frac{u(x)-u(x-h)}{h}

Ordine di convergenza e Differenze finite compatte[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Coefficienti differenze finite.

Se la funzione u è abbastanza regolare, possiamo scriverla come serie di Taylor col resto nella forma di Lagrange u(x+h) = u(x) + hu'(x) + \frac{h^2}{2}u''(y)

Da qui portando u(x) a primo membro e dividendo per h si ottiene che l'approssimazione di u'(x) data precedentemente ha un errore di ordine uno rispetto ad h.

Se la funzione è più regolare, si può fare di meglio. Sviluppiamo ad esempio u(x) in serie di Taylor al secondo ordine sia in avanti che all'indietro

u(x+h) = u(x) + hu'(x) + \frac{h^2}{2}u''(x) + \frac{h^3}{6}u'''(y)

u(x-h) = u(x) - hu'(x) + \frac{h^2}{2}u''(x) - \frac{h^3}{6}u'''(z)

dove y sta fra x e x+h mentre z sta tra x-h e x. Se ora facciamo la differenza tra la prima e la seconda equazione otteniamo la cosiddetta differenza finita centrata per la derivata prima

u'(x)\, = \frac{u(x+h)-u(x-h)}{2h} + \frac{h^2}{12}(u'''(y)+u'''(z))

che si vede essere di ordine due rispetto ad h.

Si può generalizzare l'idea e pensare di prendere una combinazione lineare di espansioni in serie di Taylor di u in punti del tipo (x + nh), sistemando i coefficienti della combinazione lineare in modo da elidere i termini che danno fastidio e tenere solo il termine relativo alla derivata che si vuole approssimare e il termine di grado più alto (che dà l'ordine di convergenza). Questa logica porta agli schemi delle differenze finite compatte che si possono usare per approssimare derivate di qualunque ordine, a patto di supporre u abbastanza regolare e di avere a disposizione un numero di nodi sufficiente. Vediamo ora un esempio di come fare ciò.

Esempio[modifica | modifica sorgente]

Vogliamo approssimare la derivata seconda con un'accuratezza di ordine 2. Scriviamo dunque

u(x+h) = u(x) + hu'(x) + \frac{h^2}{2}u''(x) + \frac{h^3}{6}u'''(x) + \frac{h^4}{24}u''''(y)

u(x+2h) = u(x) + 2hu'(x) + \frac{4h^2}{2}u''(x) + \frac{8h^3}{6}u'''(x) + \frac{16h^4}{24}u''''(z)

u(x+3h) = u(x) + 3hu'(x) + \frac{9h^2}{2}u''(x) + \frac{27h^3}{6}u'''(x) + \frac{81h^4}{24}u''''(w)

u(x+4h) = u(x) + 4hu'(x) + \frac{16h^2}{2}u''(x) + \frac{64h^3}{6}u'''(x) + \frac{256h^4}{24}u''''(q)

Ora moltiplichiamo la prima equazione per a, la seconda per b, la terza per c, la quarta per d e sommiamo. Per semplicità di notazioni indichiamo con u_{n} il valore di u in x+nh. Otterremo

au_1+bu_2+cu_3+du_4 = (a+b+c+d)u_0 + (a+2b+3c+4d)hu'_0 + (a+4b+9c+16d)\frac{h^2}{2}u''_0

+ (a+8b+27c+64d)\frac{h^3}{6}u'''_0 + a\frac{h^4}{24}u''''(y) + b\frac{16h^4}{24}u''''(z) + c\frac{81h^4}{24}u''''(w) + d\frac{256h^4}{24}u''''(q)

Ora dobbiamo imporre si annullino tutti i primi tre coefficienti del secondo membro in modo che sopravviva solo il termine relativo alla derivata seconda. Porremo quindi

a+b+c+d=0
a+2b+3c+4d=0
a+4b+9c+16d=2
a+8b+27c+64d=0

in modo che dividendo per h^2 si ottenga

\frac{au_1+bu_2+cu_3+du_4}{h^2} = u''_0 + o(h^2)

che è di ordine due, come era richiesto.

Bibliografia[modifica | modifica sorgente]

Voci correlate[modifica | modifica sorgente]

Altri progetti[modifica | modifica sorgente]

Collegamenti esterni[modifica | modifica sorgente]

matematica Portale Matematica: accedi alle voci di Wikipedia che trattano di matematica