Lezione 11 - Dipartimento di Matematica e Informatica

Anuncio
Analisi
Numerica II
D. Lera
LEZIONE 11
Analisi Numerica II
Daniela Lera
Università degli Studi di Cagliari
Dipartimento di Matematica e Informatica
A.A. 2008-2009
ODE
Analisi
Numerica II
Analisi dei metodi monostep
D. Lera
LEZIONE 11
In generale un metodo esplicito monostep si può scrivere
nella forma
ηi+1 = ηi + hΦ(xi , ηi , fi ; h), η0 = y0
dove Φ() è detta funzione di incremento, ed fi = f (xi , ηi ).
Analogamente si può scrivere
yi+1 = yi + hΦ(xi , yi , f (xi , yi ); h) + εi+1
dove yi = y(xi ) e εi indica il residuo che si ha nel punto xi se
si pretende di "far verificare" alla soluzione esatta lo schema
numerico.
ODE
Analisi
Numerica II
D. Lera
Errori nei metodi monostep
LEZIONE 11
Risulta
εi+1 = yi+1 − yi − hΦ() := ti+1 (h)
Se indichiamo
ti+1 (h) = hτi+1 (h)
τi+1 (h) è detto errore di discretizzazione locale (nel nodo
xi+1 ).
ti+1 (h) viene detto errore di troncamento locale.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Errori nei metodi monostep
Si definisce errore di discretizzazione sull’intervallo:
τ (h) =
max |τi+1 (h)|
0≤i≤N−1
dove N è il numero totale dei nodi nell’intervallo considerato,
N = N(h).
Si noti che τ (h) dipende dalla funzione y, soluzione del
problema di Cauchy.
ODE
Analisi
Numerica II
Errori nei metodi monostep
D. Lera
LEZIONE 11
Chiariamo meglio il concetto di errore di discretizzazione
locale. La soluzione esatta y(x) soddisfa:
yi+1 = yi + hΦ(xi , yi , f (xi , yi ); h) + hτ (xi , yi ; h)
(1)
Inoltre, applicando un passo del metodo supponendo di
conoscere yi vale la:
∗
ηi+1
= yi + hΦ(xi , yi , f (xi , yi ); h)
Dalle (1), (2) si ha:
∗
yi+1 − ηi+1
= hτ (xi , yi ; h)
(2)
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Errori nei metodi monostep
Si definisce errore globale di discretizzazione nel
generico nodo xi+1 la quantità
ei+1 = yi+1 − ηi+1 ,
i = 0, 1, 2, ...
E’ possibile scomporre l’errore in due componenti:
∗
∗
ei+1 = (yi+1 − ηi+1
) + (ηi+1
− ηi+1 )
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Errori nei metodi monostep
La prima componente è il l’ errore di troncamento locale e
tiene conto dell’errore introdotto al passo i + 1 dalla sola
discretizzazione delle derivata prima.
La seconda componente, detta errore di propagazione,
contiene l’accumulo di tutti gli errori commessi ai passi
precedenti all’(i + 1)-esimo.
ODE
Analisi
Numerica II
Convergenza
D. Lera
LEZIONE 11
Definizione
Un metodo si dice convergente se è tale che:
max |ηi − y(xi )| → 0 per h → 0
0≤i≤N
Il metodo si dice convergente di ordine p se esiste c > 0
tale che
max |ηi − y(xi )| ≤ chp
0≤i≤N
.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Convergenza
Il tendere a zero del solo errore locale è una condizione
necessaria alla convergenza, ma non sufficiente.
Vediamo più in dettaglio le condizioni di convergenza per i
metodi monostep.
ODE
Analisi
Numerica II
Analisi dei metodi monostep
D. Lera
LEZIONE 11
Uno schema esplicito monostep è completamente
caratterizzato dalla sua funzione di incremento Φ.
Esempio 1
Nel metodo di Eulero-Cauchy si ha:
Φ(xi , yi , f (xi , yi ); h) = f (xi , yi )
Esempio 2
Nel metodo di Heun si ha:
Φ(xi , yi , f (xi , yi ); h) =
1
[f (xi , yi ) + f (xi + h, yi + hf (xi , yi ))]
2
ODE
Analisi
Numerica II
Consistenza
D. Lera
LEZIONE 11
τi+1 =
yi+1 − yi
− Φ(xi , yi , f (xi , yi ); h)
h
In tutti gli schemi numerici considerati si ha:
lim Φ(xi , yi , f (xi , yi ); h) = f (xi , yi ),
h→0
∀xi ≥ x0
.
Considerato inoltre che vale la:
yi+1 − yi
= y0 (xi ), ∀i ≥ 0
lim
h→0
h
segue che
ODE
Analisi
Numerica II
D. Lera
Consistenza
LEZIONE 11
lim τi (h) = 0,
h→0
0≤i≤N
Da cui si ricava
lim τ (h) = 0
h→0
che esprime la consistenza di un metodo.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Consistenza
Definizione
Un metodo si dice consistente quando l’errore di
discretizzazione è infinitesimo rispetto ad h.
Un metodo ha ordine di consistenza p se
τ (h) = O(hp ), per h → 0
ODE
Analisi
Numerica II
D. Lera
Consistenza
LEZIONE 11
Esempio: metodo di Eulero-Cauchy
Consideriamo lo sviluppo di Taylor arrestato al secondo
ordine:
h2
y(x + h) = y(x) + y0 (x)h + y”(ξ)
2
x<ξ <x+h
⇒
h
y(x + h) − y(x)
− y0 (x) = y”(ξ)
h
2
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Consistenza: metodo di Eulero-Cauchy
Ma y0 (x) = f (x, y(x)), quindi
τ (h) = y”(ξ)
|τ (h)| ≤
h
2
M
h
2
con M = maxx<ξ<x+h |y”(ξ)|.
Eulero-Cauchy è consistente del primo ordine
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
La zero-stabilità
Consideriamo il metodo numerico:
ηi+1 = ηi + hΦ(xi , ηi , fi ; h)
(1)
Definizione
Il metodo numerico (1) per la risoluzione del problema di
Cauchy si dice zero-stabile se esistono h0 > 0 e C > 0 tali
che:
(h)
(h)
|zi − ηi | ≤ Cε
(2)
(h)
(h)
∀h ∈ (0, h0 ], con 0 ≤ i ≤ N, zi e ηi
soluzioni dei seguenti problemi:
rispettivamente
ODE
Analisi
Numerica II
La zero-stabilità
D. Lera
LEZIONE 11
(
(h)
(h)
(h)
(h)
zi+1 = zi + h[Φ(xi , zi , f (xi , zi ); h) + δi+1 ]
z0 = y0 + δ0
(
(h)
(h)
ηi+1 = ηi
η0 = y0
(h)
(h)
+ h[Φ(xi , ηi , f (xi , ηi ); h)
con 0 ≤ i ≤ N − 1 e
|δk | ≤ ε per ogni 0 ≤ k ≤ N
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
La zero-stabilità
La zero-stabilità richiede quindi che in un intervallo limitato
valga la (2) per ogni valore di h ≤ h0 .
La zero-stabilità riguarda in particolare il comportamento
del metodo numerico nel caso limite h → 0. E’ una proprietà
del metodo, e non del problema di Cauchy.
La (2) assicura che il metodo numerico sia poco sensibile
alle piccole perturbazioni e sia quindi stabile.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
La zero-stabilità
Diremo che il metodo è instabile nel senso che le
perturbazioni, che risultano nella soluzione ηi , sono non
limitate se si considera il limite per h → 0.
N.B. La costante C nella (2) è indipendente da h (e quindi
da N), ma può dipendere dall’ampiezza dell’intervallo di
integrazione: potrebbe crescere al crescere dell’intervallo.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Teorema 1.(Zero-stabilità)
Si consideri il generico metodo esplicito monostep:
ηi+1 = ηi + hΦ(xi , ηi , fi ; h)
(1)
per la risoluzione del problema di Cauchy.
Si supponga che la funzione di incremento Φ sia
uniformemente lipschitziana di costante Λ rispetto al
secondo argomento, cioé:
|Φ(xj , zj , f (xj , zj ); h) − Φ(xj , ηj , f (xj , ηj ); h)| ≤ Λ|zj − ηj |
xj ∈ [x0 , x0 + T].
Allora il metodo numerico (1) è zero-stabile.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Teorema 2.(Convergenza)
Nelle stesse ipotesi del Teorema 1 si ha:
|yi − ηi | ≤ (|y0 − η0 | + ihτ (h))eihΛ , 1 ≤ i ≤ N
Pertanto se il metodo è consistente e
|y0 − η0 | → 0, per h → 0, allora il metodo è convergente.
Inoltre se il metodo ha ordine di consistenza p e
|y0 − η0 | = O(hp ), allora converge con lo stesso ordine p.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Quindi dal Teorema 2 si ha
CONSISTENZA + ZERO-STABILITA’ = CONVERGENZA
Questa proprietà è nota come teorema di equivalenza.
Il viceversa: "un metodo convergente è zero-stabile" è
ovviamente vero.
ODE
Analisi
Numerica II
Metodo di Eulero: convergenza
D. Lera
LEZIONE 11
Si consideri:
0
y = f (x, y(x))
y(x0 ) = y0
ηi+1 = ηi + hf (xi , ηi )
η0 = y0
problema di cauchy
schema numerico
(1)
Applicando Eulero si opera la seguente approssimazione
yi+1 ≈ yi + hf (xi , yi )
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Metodo di Eulero: convergenza
La soluzione esatta y(x) soddisfa:
yi+1 − yi
− f (xi , yi ) := τ (xi , yi ; h)
h
yi+1 = yi + hf (xi , yi ) + hτ (xi , yi ; h)
(2)
Inoltre vale la:
∗
ηi+1
= yi + hf (xi , yi )
(3)
é il valore che si troverebbe applicando un passo di Eulero
supponendo di conoscere yi .
ODE
Analisi
Numerica II
D. Lera
Metodo di Eulero: convergenza
LEZIONE 11
Poniamo
ei+1 = yi+1 − ηi+1 ,
i = 0, 1, 2, ...
Errore nel nodo i cioé
∗
∗
ei+1 = (yi+1 − ηi+1
) + (ηi+1
− ηi+1 )
Dalle (1), (2) e (3) si ha:
∗
yi+1 − ηi+1
= hτ (xi , yi ; h)
∗
ηi+1
− ηi+1 = ei + h[f (xi , yi ) − f (xi , ηi )]
ODE
Analisi
Numerica II
Metodo di Eulero: convergenza
D. Lera
LEZIONE 11
Supponiamo che f (x, y) sia lipschitziana, cioé:
|f (xi , yi ) − f (xi , ηi )| ≤ L|yi − ηi | = L|ei |
Quindi
|ei+1 | ≤ h|τ (xi , yi ; h)| + |ei | + h|f (xi , yi ) − f (xi , ηi )|
≤ hτ (h) + (1 + Lh)|ei |
dove
τ (h) = max |τ (xi , yi ; h)|
i
ODE
Analisi
Numerica II
Metodo di Eulero: convergenza
D. Lera
LEZIONE 11
Si ha:
|e0 | = 0,
a = (1 + hL),
b = hτ (h)
a e b non dipendono da i.
|ei+1 | ≤ b + a|ei | ≤ b + a(b + a|ei−1 |) = b(1 + a) + a2 |ei−1 |
≤ b(1 + a) + a2 (b + a|ei−2 |) = b(1 + a + a2 ) + a3 |ei−2 | ≤ ...
b(1 + a + a2 + ... + ai ) + ai+1 |e0 | =
ai+1 − 1
b
a−1
ODE
Analisi
Numerica II
Metodo di Eulero: convergenza
D. Lera
LEZIONE 11
Cioé
|ei+1 | ≤
(1 + hL)i+1 − 1
hτ (h)
hL
Siccome h(i + 1) = xi+1 − x0 e inoltre
1 + t ≤ et , ∀t > 0 ⇒ 1 + hL ≤ ehL
si ha che
(1 + hL)i+1 − 1 ≤ ehL(i+1) − 1 = eL(xi+1 −x0 ) − 1
≤ eL(xi+1 −x0 )
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Metodo di Eulero: convergenza
Infine:
|ei+1 | ≤ eL(xi+1 −x0 )
Con
τ (h) ≈
M
h,
2
τ (h)
L
M = max |y”(x)|
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Metodo di Eulero: convergenza
Quindi
l’errore globale ei+1 tende a zero per h → 0.
l’ordine dell’errore globale è pari all’ordine dell’errore
locale.
Il metodo di Eulero è convergente.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Metodo di Eulero: convergenza
Teniamo ora conto degli errori di arrotondamento.
Siano ηei le quantità calcolate in presenza di errori di
arrotondamento. Lo schema di Eulero si può scrivere:
ηei+1 = ηei + hf (xi , ηei ) + ρi
ηe0 = y0 + ρ0
dove ρi rappresentano gli errori introdotti dal calcolo
numerico della quantità ηei + hf (xi , ηei ) (err. di
arrotondamento locali).
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Metodo di Eulero: convergenza
Si ponga:
ε 0 = ρ0 ,
εi = ηei − ηi
Con un procedimento analogo al precedente si ricava:
h
ρi
|εi+1 | ≤ eL(xi+1 −x0 ) |ρ0 | +
hL
con ρ = maxi |ρi |.
Tende all’∞ per h → 0 !!
ODE
Analisi
Numerica II
Metodo di Eulero: convergenza
D. Lera
LEZIONE 11
Se definiamo come errore totale:
Ei := yi − ηei = (yi − ηi ) + (ηi − ηei ) = ei + εi
si ha:
|Ei+1 | ≤ |ei+1 | + |εi+1 |
1
ρ
L(xi+1 −x0 )
≤e
|ρ0 | +
τ (h) +
L
h
E’ necessario un compromesso nella scelta di h. Esiste un
h∗ = passo ottimale.
ODE
Analisi
Numerica II
D. Lera
LEZIONE 11
Metodo di Eulero: errore totale
Descargar