Metodi di integrazione numerica (ODE+PDE) Jost von Hardenberg – ISAC-CNR
Integrazione numerica di equazioni differenziali Cerchiamo una soluzione (un’approssimazione numerica) per un’equazione differenziale ordinaria p.es Oppure per equazioni alle derivate parziali, es: date opportune condizioni iniziali e/o al contorno
Metodi a differenze finite Sostituiamo al problema continuo una sua rappresentazione su una griglia discretizzata (nello spazio e nel tempo): - Problema ben posto - Consistenza
Rappresentazione a differenze finite delle derivate Ottenibile da: Definizione classica derivata prima di una funzione u(x,y) in un punto: Espansione in serie di Taylor di u(x,y) attorno ad un punto
Rappresentazione a differenze finite delle derivate Ottenibile da: Fit di un polinomio nell’intorno di un punto: ui ui+1 ui-1 x-x x x+x
Integrazione numerica di eq. differenziali ordinarie NB: qualunque ODE di ordine > 1 può essere scritta come sistema di eq. 1. ordine. Es: Problema generico:
ODE: Il metodo di Eulero + Err.ore Troncamento yn+1 f(y) yn Metodo accurato al 1. ordine - Poco stabile Metodo esplicito Metodo asimmetrico t
ODE: Runge-Kutta 2 yn+1 y(t) yn k2 k1 Metodo accurato al 2. ordine - Buona stabilità Metodo esplicito più simmetrico di Eulero t t+t/2 t+t
ODE: Runge-Kutta 4 y(t) yn k4 k2 k1 k3 Metodo accurato al 4. ordine - Buona stabilità Metodo esplicito t t+t/2 t+t
Altri metodi Leapfrog …. molti altri metodi espliciti Predictor-corrector Metodi impliciti (maggiore stabilità, non necessariamente accuratezza)
PDE, esempi Avvezione di uno scalare Non è stabile! FT CS Equazione del calore
PDE: Condizioni al contorno Condizioni di Dirichlet eg. u=f su Condizioni di von Neumann: eg: u/n=f oppure u/s=g su Condizioni miste e.g: u/n+ku=f n s
Analisi di stabilità D = soluzione discreta (infinita precisione) N = soluzione numerica (precisione finita) A = soluzione analitica Err. di discretizzazione = A - D Err. arrotondamento = N – D Come cresce l’errore di arrotondamento ?
Analisi di stabilità di von Neumann Seguiamo un piccolo errore : y’=y+ nelle equazioni discrete Eq. lineari (linearizzate) per la crescita dell’errore Errori rappresentati come modi di Fourier: Sostituiamo e cerchiamo
Altri metodi: Griglie staggered Metodi spettrali Metodi impliciti Volumi finiti ….. Metodi per equazioni ellittiche (rilassamento, multigriglia ….)