Metodi di soluzione numerica per equazioni differenziali ordinarie
I metodi di soluzione numerica per equazioni differenziali ordinarie permettono di risolvere in maniera approssimata equazioni differenziali ordinarie altrimenti non trattabili.
Metodi a passo singolo
modificaUn metodo numerico per la risoluzione di una equazione differenziale si definisce ad un passo se per ogni dipende solamente da . Altrimenti si parla di metodo a più passi o multistep.
Metodi di Eulero
modificaMetodo di Eulero esplicito (o "in avanti")
modificaSi tratta di un metodo esplicito per risolvere un'equazione differenziale. Data l'equazione nella forma:
con la condizione iniziale:
definita nel dominio è necessario prima di tutto discretizzare il dominio con un passo , ottenendo i punti discreti , dove , con e . A questo punto il procedimento è quello di sostituire l'equazione della tangente alla funzione:
In questo modo la soluzione diviene una somma di funzioni lineari "troncate":
in cui:
per .
Metodo di Eulero implicito (o all'indietro)
modificaSi tratta di un metodo implicito per risolvere un'equazione differenziale, ricavato dall'approssimazione della derivata con le differenze finite all'indietro:
che applicato all'equazione differenziale diventa:
equivalente a:
da cui otteniamo la formula risolutiva generica:
Per risolvere l'equazione ci si riconduce pertanto ad un problema di ricerca di zeri di una funzione. Pur essendo anch'esso un metodo del prim'ordine, è in generale più stabile dell'analogo metodo esplicito. I metodi di Eulero sono usati quasi esclusivamente in analisi numerica, poiché permettono di risolvere semplicemente equazioni differenziali mediante l'utilizzo del computer.
Metodo dei trapezi (o metodo di Crank-Nicolson)
modificaNon sempre i metodi precedenti sono utilizzabili nell'approssimazione numerica di equazioni differenziali. Ad esempio, nel caso del pendolo lineare:
i due metodi di Eulero porteranno, durante il processo di numerizzazione, a trasformare il centro in un fuoco. Esistono, dunque, altri metodi, uno di questi è il metodo dei trapezi. Questo metodo deriva comunque dai metodi di Eulero: è sufficiente sommare membro a membro la formula del metodo di Eulero esplicito e quella di Eulero implicito per ricavarne il nuovo metodo, come segue:
Il nome del metodo deriva dal fatto che la formula risultante ha la stessa forma utilizzata per approssimare l'integrale definito di una funzione come l'area di un trapezio.
Metodo di Heun
modificaDapprima, calcolare:
Poi, calcolare:
Metodi multipasso
modificaQuesti metodi utilizzano non solamente e per calcolare ma anche i valori . Con tutti questi metodi, è necessario utilizzare dapprima un metodo a singolo passo (come il metodo di Eulero) per calcolare i primi valori dei .
Metodo di Adams-Bashforth
modificaMetodo esplicito:
Fu utilizzata da John Couch Adams per risolvere le equazioni differenziali della teoria della capillarità (vedi la bibliografia).
Metodo di Adams-Moulton
modificaMetodo implicito:
Formule di differenziazione all'indietro
modificaLe formule di differenziazione all'indietro (BDF) sono una famiglia di metodi impliciti usati specialmente per la soluzione di equazioni differenziali rigide.
Metodi predittore-correttore
modificaUn metodo predittore-correttore si forma di un metodo esplicito (il predittore) e un metodo implicito (il correttore). Dapprima il metodo esplicito è utilizzato per calcolare un'approssimazione di , poi questa approssimazione di è utilizzata nel metodo implicito per calcolare una migliore approssimazione di . Il vantaggio di questo tipo di metodo è di evitare di risolvere un'equazione implicita per . Un esempio di metodo predittore correttore è il metodo di Adams-Bashforth (il predittore) con il metodo di Adams-Moulton (il correttore).
Metodo di approssimazione a serie di potenze
modificaLe serie di potenze sono un algoritmo per costruire funzioni e quindi soluzioni di equazioni differenziali lineari. Il procedimento è quello di costruire formalmente una serie di potenze in modo che i suoi coefficienti soddisfino l'equazione differenziale, in particolare utilizzando le serie derivate, e controllare poi che la scelta dei coefficienti dia una serie convergente, quindi converga ad una funzione.
Esempio
modificaSi consideri:
Si costruisce formalmente le serie:
valutando i primi termini:
uguagliando alle rispettive potenze della :
- che corrisponde a
- che corrisponde a
- che corrisponde a
- che corrisponde alla serie:
Questa serie è convergente in per ogni scelta di (potendosi ricondurre alla serie esponenziale con la sostituzione ) e la somma di tale serie, che è funzione di classe , fornisce una soluzione dell'equazione differenziale.
Naturalmente l'algoritmo vale anche per equazioni differenziali lineari di ordini superiori.
Bibliografia
modifica- (EN) D. M. Young e R. T. Gregory A survey of numerical mathematics (Dover, New York, 1988)
- (EN) L. Fox, The numerical solution of two-point boundary problems in ordinary differential equations. (Oxford University Press, 1957).
- (EN) W. E. Milne, Numerical solution of differential equations. (John Wile & sons, Nueva York, 1953).
- (EN) M. Abramowitz e I. Stegun Handbook of Mathematical Functions (Dover, Nueva York, 1964) (sezione 25.5).
- (EN) E. T. Whittaker e G. Robinson The Calculus Of Observations: A Treatise On Numerical Mahematics (Blackie and Sons, Londra, 1924) (metodo di Adams-Bashforth, capitolo 14)
- (EN) F. Bashforth e J. C. Adams An attempt to test the theories of capillary action by comparing the theoretical and measured forms of drops of fluid. With an explanation of the method of integration employed in constucting the tables which give the theoretical forms of such drops (Cambridge University Press, 1883) (storico; metodo originale di Adams e Bashforth)
Voci correlate
modificaCollegamenti esterni
modifica- Università degli Studi di Brescia Metodi di Adams et di Crank-Nicolson; Metodi Predittore Correttore
- (EN) Frank Vesely Introduction to Computational Physics sez. II-4
- (EN) Richard Fitzpatrick Computational Physics: An introductory course (Integration of ODEs)
- (EN) Stuart Daziel Numerical Methods Lecture Notes sez. 6-7
- (FR) J. Rappaz Cours d'analyse numérique pour ingénieurs
- (EN) J. C. Kirkpatrick (1976) The Adams formulas for numerical integration of differential equations from 1st to 20th order Nasa Technical Report NASA-TM-X-58182
- (EN) E. Fehlberg (1968) Classical fifth-, sixth-, seventh-, and eighth-order Runge-Kutta formulas with stepsize control