Subsections
4.2 METODO DI EULERO
Sommario Il più semplice procedimento per approssimare un sistema
dinamico continuo con uno discreto è quello di Eulero. Le soluzioni
del sistema discreto così ottenuto approssimano le soluzioni del
sistema continuo, in un senso che può essere reso rigoroso con la
nozione di convergenza uniforme. La differenza tra le due, cioè
l'errore di discretizzazione, è una funzione rapidamente crescente
con il passare del tempo, per cui la potenza di calcolo richiesta per
ottenere soluzioni accurate è notevole.
Una definizione alternativa della funzione esponenziale
di variabile reale è:
Vale l'analogo matriciale: se è una matrice quadrata
:
per ogni in . Basta scrivere la differenza
(i coefficienti binomiali sono
nulli quando ); la serie a secondo membro ha coefficienti non
negativi, e se si passa alle norme si trova la maggiorazione
dove è la norma uniforme della matrice .
Nel caso scalare la successione converge
uniformemente sull'intervallo
, con arbitrario (ma fissato). Per il
teorema della convergenza in norma, anche la definizione
alternativa di esponenziale nel caso matriciale converge uniformemente
su . Da questo segue (per una delle proprietà della
norma uniforme) che
uniformemente per in ogni intervallo limitato, e per ogni
condizione iniziale . L'aspetto interessante di questa
formula è che al primo membro abbiamo il flusso integrale di un
sistema dinamico continuo lineare; a secondo membro sotto segno di
limite abbiamo l'analoga rappresentazione di tutte le soluzioni di un
sistema dinamico discreto lineare, e precisamente
La relazione tra il sistema dinamico continuo e quello discreto
ottenuta qua sopra è un caso particolare (lineare) del
metodo di Eulero. La motivazione geometrica
dell'approssimazione di Eulero può essere apprezzata dalla
Figura 4.3. Se si deve calcolare la soluzione con
condizione iniziale al tempo , si suddivide
l'intervallo in cui varia in sottointervalli,
ciascuno di lunghezza pari al passo d'integrazione ,
con abbastanza
grande. Allora si approssima con
,
con
, eccetera, ad ogni passo
rimpiazzando la vera soluzione con la sua approssimazione lineare
(cioè con il suo differenziale).
Benché nel sistema dinamico discreto appaiano solo i punti che
approssimano la soluzione ai tempi con intero, si
può immaginare di descrivere un'approssimazione per tutti i tempi
usando l'interpolazione lineare (cioè ancora lo
stesso differenziale) per i punti intermedi. Il
poligono di Eulero ottenuto congiungendo
i punti
è il grafico
di una funzione di che è continua ma non differenziabile, e che
approssima la soluzione nel senso che la successione di poligoni di
Eulero ottenuti per crescente tende alla soluzione del sistema
dinamico continuo, uniformemente su .
Figura 4.3:
Il poligono di Eulero: ad ogni passo temporale
si approssima la soluzione del sistema dinamico continuo con il suo
differenziale nel punto precedentemente calcolato; in questo esempio
la soluzione dell'equazione y'=y è approssimata con il metodo di
Eulero usando 2,4,6 ed 8 passi.
|
L'errore di troncamento locale commesso in un passo di lunghezza
del metodo di Eulero al posto della soluzione esatta si può
maggiorare usando il confronto in norma con l'esponenziale:
dove e ; il penultimo passaggio è il resto di
Lagrange della formula di Taylor per la funzione esponenziale di
variabile reale.
Esempio:
Il sistema dinamico lineare che si vuole approssimare sia un
oscillatore armonico:
Il metodo di Eulero dà il sistema dinamico discreto:
La soluzione del sistema discreto contiene le potenze della matrice
, e quindi si scrive più facilmente
interpretando questa matrice come numero complesso, e poi usando la
rappresentazione mediante modulo e argomento:
In conclusione la matrice che esprime la soluzione al passo in
funzione delle condizioni iniziali è una dilatazione di un fattore
che è vicino a uno per piccolo, seguita da
una rotazione di un angolo
che differisce di poco dalla rotazione di della
soluzione del sistema continuo, sempre per piccolo.
Esercizio
Discretizzare, con il metodo di Eulero, il sistema dinamico
e discutere
l'andamento delle soluzioni per il tempo discreto che tende a
. (Soluzione)
Supponiamo di dover approssimare la soluzione di un sistema dinamico
nonlineare con condizione iniziale .
Il metodo di Eulero consiste nell'approssimare la soluzione al tempo
con l'approssimazione lineare:
La soluzione a tempi successivi può essere approssimata ripetendo il
procedimento, cioè con la successione definita per ricorrenza:
Se si desidera avere delle informazioni sui valori assunti da
per valori di intermedi tra e si può ricorrere ad
un'interpolazione, per esempio lineare ottenendo ancora
il poligono di Eulero. L'errore di troncamento locale
è sempre infinitesimo del secondo ordine rispetto ad :
L'errore di troncamento accumulato è la differenza tra la
successione definita per ricorrenza dal metodo di Eulero e la
soluzione del sistema dinamico con le stesse condizioni iniziali:
Se il campo vettoriale è
lipschitziano di costante
e limitato in modulo dalla costante , cioè se
per ogni in , allora l'errore accumulato
dopo il tempo soddisfa alla diseguaglianza
Dimostrazione:
Lo stato sia ed il campo vettoriale , con
; la soluzione al passo si può calcolare con la
formula di Lagrange:
dove per ogni va scelto un con . Si noti che
ciascuno dei punti
non può distare da
più di , sempre per la formula di Lagrange.
Nal passare da a
l'errore di troncamento
accumulato si accresce secondo la formula:
Si passa ai valori assoluti, si usa la diseguaglianza triangolare;
la differenza, nella formula precedente, tra i
valori di calcolati in due punti diversi si può maggiorare con
volte la norma della differenza degli argomenti, si ottiene
Definiamo un'altra successione che sia soluzione della
stessa equazione ma con il segno di uguaglianza, e con
:
Allora
, ma la successione è
soluzione di un'equazione alle differenze finite lineare
non omogenea, e si può calcolare
esplicitamente
La costante è una soluzione dell'equazione
non omogenea e si ricava per sostituzione:
e imponendo la condizione iniziale si trova
In conclusione
Per ottenere la tesi basta sostituire ed usare la diseguaglianza
Il fattore appare perché si sono usate nella
dimostrazione due norme, quella euclidea per la lunghezza
degli spostamenti, e quella di matrice che è contenuta nella
relazione tra matrice jacobiana e costante di Lipschitz.
C.D.D.
La maggiorazione per l'errore di troncamento accumulato che si
ricava in generale, cioè per ogni possibile sistema dinamico, si
rivela pessimistica in casi specifici. Che l'accumulazione
dell'errore possa essere esponenziale è inevitabile, ma in molti casi
l'esponente sarà più piccolo della costante di Lipschitz, e sarà
piuttosto legato al massimo
esponente di Lyapounov
della soluzione che si cerca di approssimare.
Andrea Milani
2009-06-01