La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Equazioni Differenziali Ordinarie Metodi Multi-step Studenti: Cutuli Sebastiano Cantone Salvatore Seminario Metodi Matematici per lOttimizzazione A.A.

Presentazioni simili


Presentazione sul tema: "Equazioni Differenziali Ordinarie Metodi Multi-step Studenti: Cutuli Sebastiano Cantone Salvatore Seminario Metodi Matematici per lOttimizzazione A.A."— Transcript della presentazione:

1 Equazioni Differenziali Ordinarie Metodi Multi-step Studenti: Cutuli Sebastiano Cantone Salvatore Seminario Metodi Matematici per lOttimizzazione A.A. 2011/2012

2 Indice 1 Introduzione 2 I Metodi Multi-Step 2.1 Metodi impliciti Metodo di Adams-Bashford 2.2 Metodi espliciti Metodo di Adams-Moulton

3 Introduzione Si definisce equazione differenziale unequazione che coinvolge una o più derivate di una funzione incognita. Se tutte le derivate sono calcolate rispetto ad una sola variabile indipendente, lequazione si dirà equazione differenziale ordinaria (ODE). Quando sono presenti derivate rispetto a più variabili indipendenti, avremo invece una equazione differenziale alle derivate parziali (PDE). Una equazione differenziale avrà ordine n, se n è lordine massimo delle derivate che vi compaiono.

4 La forma generale di una ODE di ordine n è: Dove y=y(x) è la funzione cercata. Una funzione è detta soluzione di una ODE se essa riduce lequazione ad una identità quando viene sostituita nellequazione. Introduzione

5 ODE di ordine 1 La forma generale di una equazione differenziale ordinaria di primo ordine è: dove y=y(x) è la funzione incognita. Per semplicità assumiamo che lequazione sia scritta nella forma: con la condizione y=y 0 quando x=x 0 :

6 Esempio… Determinare le primitive di una funzione f(x) significa risolvere y(x) = f(x) dove l'incognita è la funzione y(x). Questa equazione è un semplice esempio di equazione differenziale. Ad esempio se: y(x) = 2x le soluzioni che si ottengono integrando 2x sono y(x) = x 2 + c ossia le soluzioni sono incognite e ciascuna è individuata da un diverso valore della costante reale c, ognuna detta soluzione particolare. La costante c può essere determinata imponendo un'ulteriore condizione. Ad esempio se vogliamo che y(1) = 3 allora c = 2 e y(x) =x

7 ODE di ordine 1 Linterpretazione geometrica della soluzione è data dal fatto che ogni soluzione particolare è rappresentata da una curva nel piano (x,y) e, preso un punto P(x,y) arbitrario, possiamo calcolare f(x,y) che deve essere uguale alla pendenza della tangente alla curva desiderata nel punto P. Campo di direzione

8 Problema di Cauchy Lobiettivo è capire come evolve un sistema a partire da alcuni dati iniziali: ciò si traduce imponendo che la soluzione del problema differenziale passi per un determinato punto del piano x,y. Si ottiene allora il cosiddetto problema ai valori iniziali o problema di Cauchy: Sia con valore iniziale. trovare una funzione con y derivabile in tale che:

9 Problema di Cauchy Alcune proprietà che devono essere verificate dal problema di Cauchy sono: Esistenza: vedere se il problema ammette esistenza della soluzione. Unicità: vedere se la soluzione è unica.

10 Teorema di esistenza ed unicità Sia un dominio ed una funzione continua che soddisfi la condizione di Lipschitz: Comunque si scelgano e una costante segue che: ha soluzione unica in tale intervallo.

11 Metodi Multistep Per risolvere le equazioni differenziali si ricorre a metodi numerici che possono essere ad un passo o a più passi, poiché trovare una soluzione analitica è unoperazione piuttosto difficile. Un metodo numerico per risolvere Equazioni Differenziali Lineari inizia da un punto iniziale e poi tramite un passo computazionale (metodo) trova il punto di soluzione successiva. Il processo continua con i passi successivi per mappare la soluzione.

12 Metodi Multistep I Metodi a Passo Singolo (come ad esempio il Metodo di Eulero) si riferiscono ad un solo punto precedente e dei suoi derivati per determinare il valore corrente. I Metodi a più Passi o Multistep ricercano una soluzione più accurata possibile, mantenendo e utilizzando le informazioni provenienti da passaggi precedenti, piuttosto che abbandonarle. Di conseguenza, i metodi multistep si riferiscono a diversi punti precedenti ed ai loro valori derivati.

13 Metodi Multistep Impliciti ed Espliciti Un metodo si dice esplicito se y i+1 dipende solo dai valori dei passi precedenti. Un metodo si dice implicito se y i+1 dipende anche da se stesso, attraverso la funzione f. Questi ultimi metodi richiedono la soluzione di una equazione non lineare se f è non lineare in y. Unequazione differenziale è detta lineare se la funzione f è lineare nella funzione incognita e nelle derivate, ovvero è della forma:

14 Instabilità dei metodi one-step Nei metodi One-Step di tipo esplicito, dove ad ogni passo viene calcolato la soluzione nel punto t i+1, utilizzano in modo opportuno i valori già noti nei nodi precedenti, sono schemi in generale poco costosi e facili da implementare, ma presentano spesso dei fenomeni di instabilità numerica in particolare quando la soluzione esatta del problema che si sta approssimando presenta dei forti gradienti (ricordiamo che il gradiente di una funzione è definito come il vettore che ha per componenti cartesiane le derivate parziali della funzione. Il gradiente rappresenta quindi la direzione di massimo incremento di una funzione di n variabili).

15 Instabilità dei metodi one-step Per ottenere una soluzione non oscillatoria si dovrebbe utilizzare un passo h così piccolo da rendere proibitivo l'uso di metodi espliciti. In questi casi è indispensabile ricorrere a metodi impliciti, cioè metodi in cui la funzione f deve essere valutata anche in y i+1. Vediamo allora come possono essere ricavati dei metodi di questo tipo. Dal teorema fondamentale del calcolo integrale e dalla definizione di equazione differenziale otteniamo:

16 Instabilità dei metodi one-step Se adesso usiamo degli schemi numerici per approssimare lintegrale della slide precedente otteniamo degli schemi per approssimare il problema di Cauchy. Se per esempio approssimiamo l'integrale con l'area del rettangolo di base h ed altezza f(t n ; u n ) otteniamo il Metodo di Eulero Esplicito: mentre se usiamo l'area del rettangolo di base h ed altezza f(t n+1 ; u n+1 ) otteniamo il Metodo di Eulero Implicito:

17 Instabilità dei metodi one-step Utilizzando la stessa tecnica si possono ottenere anche metodi così detti a più passi, cioè in cui il valore di u n+1 dipende non solo da un u n, ma anche dagli altri valori { u n-1, u n-2,.…., u n-q } calcolati precedentemente. Sostituendo nellintegrale l'integrale del polinomio che interpola f nei nodi { t n-q, t n-q+1,….,t n }, si ottengono i così detti Metodi di Adams-Bashforth che sono di tipo esplicito, mentre sostituendo l'integrale del polinomio che interpola f nei nodi { t n-q, t n-q+1,….,t n, t n+1 } si ottengono i così detti Metodi di Adams-Moulton che sono di tipo implicito.

18 Schema generale L'equazione principale dei Metodi Multistep si ottiene dall'equazione supponendo che l'intervallo di integrazione [ t 0 ; T ] sia suddiviso in un certo numero di intervallini (N) di ampiezza h (passo di discretizzazione ((T-t 0 )/N) ed integrando l'equazione da t n-j a t n+k : Applichiamo una formula di quadratura per il calcolo dell'integrale.

19 Schema generale Per il calcolo dell'integrale si applicano le formule di Quadratura di Newton-Cotes. Utilizzando q+1 punti { t n-q,….,t n } costruiamo il polinomio di Lagrange ed integriamolo nell'intervallo [t n-j ; t n+k ]. dove Li(x) rappresentano i polinomi elementari di Lagrange, cioè:

20 Schema generale Sostituendo quindi il polinomio nell'integrale, si ottiene la seguente relazione fra i valori della y i dove, per compattezza di notazione si è posto e dove i coefficienti β qi si ottengono per integrazione dei polinomi elementari di Lagrange A seconda dei diversi valori di k, j e q si ottengono differenti metodi multistep.

21 Schema generale In particolare, per k = 1 e j = 0 si ottengono i cosiddetti metodi di Adams-Bashforth (di tipo esplicito) Per k = 0 e j = 1 otteniamo i cosiddetti metodi di Adams-Moulton (di tipo implicito) o meglio

22 Metodo di adams-bashforth Questi metodi vengono detti espliciti poiché per calcolare il passo n-esimo si utilizza una combinazione lineare dei primi q+1 passi. con Otteniamo diversi metodi di tale formula se a partire da questa poniamo p=1,2,3,… Se difatti poniamo p=1 (Adams-Bashforth ad 1 passo) ritorniamo ai metodi one-step perché lequazione diventa:

23 Metodo di adams-bashforth Se poniamo p=2 (Adams-Bashforth a 2 passi) : Ovvero, per trovare il passo (n+1)-esimo vengono utilizzati i valori trovati al passo n-2 ed n-1. Oppure ancora se poniamo p=3 (Adams-Bashforth a 3 passi) si ottiene:

24 Ode & matlab Risoluzione dellequazione differenziale: con soluzione: -Intervallo di approssimazione [t 0,t f ]=[0,5] -N° approssimazioni (passi) n = 10 -Step-Size : h=(t f -t 0 )/n=1/2 Poiché tratteremo un metodo esplicito a 2 passi, ed il valore iniziale non è sufficiente per eseguire lo script di risoluzione, utilizzeremo il metodo di Eulero esplicito per calcolare il valore y(2)

25 Ode & matlab

26

27

28 Ode & matlab considerazioni metodo a.b. Come è possibile notare lerrore cresce soprattutto con il metodo di A.B.4, il quale non converge alla soluzione.

29 Ode & matlab considerazioni metodo a.b. Per ottenere la convergenza abbiamo usato le seguenti accorgenze: Passo di integrazione ¼ per tutti i metodi Ottenendo : Andamento errore diminuito rispetto ai valori precedentemente rilevati

30 Ode & matlab considerazioni metodo a.b.

31 Risultati sperimentali Sono stati trovati i seguenti risultati sperimentali (errori relativi): N ERRORE BASHFORT H 2 ERRORE BASHFORT H 3 ERRORE BASHFORT H , , , , ,021210, , , , , ,001220,00137 Osservazioni: Aumentando il n° di passi (dunque dimezzando man mano h), la soluzione approssimata si avvicina sempre più alla soluzione esatta, indice del fatto che il metodo numerico converge. Inoltre è facile osservare che la funzione che si avvicina più di tutte alla soluzione reale è quella di ordine 2.

32 METODO DI ADAMS-MOULTON Sono molte le analogie tra il metodo di Adams- Bashforth ed il metodo di Adams-Moulton, infatti sostituendo all'integrale della funzione f(t; y(t)) nellequazione: l'integrale del polinomio interpolatore di Lagrange (con grado p+1 per ottenere il metodo Adams- Moulton a p+1 passi) che interpola la f nei nodi, si ottengono i così detti metodi di Adams-Moulton che fanno parte della famiglia dei metodi impliciti. Pertanto il polinomio interpolatore utilizza non solo i punti t n-p, t n-p+1,….., t n, analogamente ad Adams-Bashforth, metodo esplicito, ma anche t n+1.

33 Illustrazione metodo a.moulton Nella figura apprezziamo che il metodo di Adams- Moulton tiene conto del passo t n+1 rispetto a Bashforth, pertanto tale metodo implicito dovrebbe avere unaccuratezza maggiore.

34 Formule generali Adams-Moulton Dopo tutte le considerazioni del caso la formula generale del metodo Moulton si presenta così: Con Tuttavia preferiamo scrivere la formula secondo questa forma:

35 METODO DI ADAMS-MOULTON A partire dalla formula precedente iteriamo p sulla sommatoria e vediamo come si presenta la formula per p=1,2,3,4 e 5 p=1 y n = y n-1 + hf n (ovvero Eulero - implicito) p=2 y n+1 = y n + h/2 [f n+1 + f n ] p=3 y n+2 = y n+1 + h (5/12 f n+2 – 2/3 f n+1 -1/12 f n ] p=4 y n+3 = y n+2 + h (3/8 f n /24 f n+2 -5/24 f n+1 +1/24 f n ] p=5 y n+4 = y n+3 + h/720 (251 f n f n f n f n f n ] …..

36 METODO DI ADAMS-MOULTON Poiché si tratta di un metodo implicito dove ad ogni passo è richiesta la soluzione di un equazione non lineare, è necessario trovare un metodo per risolvere le equazioni non lineari: ad esempio nel metodo di Eulero Implicito la soluzione è data dalla formula: y n+1 = y n + h*f(t n+1,y n+1 ) dunque y n+1 è la soluzione dellequazione ad ogni passo: y n+1 - y n - h*f(t n+1,y n+1 ) = 0 Se f ha una forma semplice si può risolvere facilmente y n+1 altrimenti è necessario ricorrere ad un metodo per la risoluzione di equazioni non lineari.

37 Funzione fzero di matlab Matlab calcola la soluzione del problema f(x)=0 con la function fzero. In fzero sono accoppiati un metodo a convergenza veloce (interpolazione quadratica inversa) insieme ad un metodo di tipo bisezione, per determinare un intervallo in cui f cambi segno, e per evitare che il metodo diverga. Lespressione è x = fzero(funzione; x 0 ) dove funzione è una stringa di caratteri che contiene il nome della funzione di cui si sta cercando uno zero, ed x 0 è un valore di partenza dal quale cominciare la ricerca. Per risolvere lequazione y n+1 - y n - h*f(t n+1,y n+1 ) = 0 è stato utilizzato il comando y(n+1) = fzero y_inc - y(n) -h*f (t(n+1),y_inc), y(n)| y_inc - h*f (t(n+1) – y(n) indica che si vuole trovare la soluzione dellequazione y_inc -h*f (t(n+1),y_inc)-y(n)=0 con incognita y_inc; il parametro y(n) indica che verrà scelto questo valore(il valore precedente) come stima iniziale della soluzione.

38 Ode & matlab Risoluzione dellequazione differenziale: con soluzione: -Intervallo di approssimazione [t 0,t f ]=[0,5] -N° approssimazioni (passi) n = 10 -Step-Size : h=(t f -t 0 )/n=1/2 Poiché Adams-Moulton di 2° ordine è un metodo a 2 passi, utilizzeremo il metodo di Eulero implicito per calcolare il valore y(2) e analogamente y(3), y(4) e y(5) per i metodi di ordine 3°,4° e 5°.

39 Risultati sperimentali

40

41 Sono stati trovati i seguenti risultati sperimentali (errori relativi): N ERRORE MOULTON 2 ERRORE MOULTON 3 ERRORE MOULTON 4 ERRORE MOULTON , , , , , , , , , , , , , , , , , ,016570, ,02716 Osservazioni: Aumentando il n° di passi (dunque dimezzando man mano h), la soluzione approssimata si avvicina sempre più alla soluzione esatta, indice del fatto che il metodo numerico converge. Inoltre è facile osservare che la funzione che si avvicina più di tutte alla soluzione reale è quella di ordine 2.


Scaricare ppt "Equazioni Differenziali Ordinarie Metodi Multi-step Studenti: Cutuli Sebastiano Cantone Salvatore Seminario Metodi Matematici per lOttimizzazione A.A."

Presentazioni simili


Annunci Google