• Non ci sono risultati.

Problema test. Problemi stiff. Regioni di stabilit`a di Eulero esplicito, implicito e Crank-Nicolson. Barriere di Dahlquist. Metodi di Runge-Kutta (di ordine 2 e 4).

N/A
N/A
Protected

Academic year: 2021

Condividi "Problema test. Problemi stiff. Regioni di stabilit`a di Eulero esplicito, implicito e Crank-Nicolson. Barriere di Dahlquist. Metodi di Runge-Kutta (di ordine 2 e 4)."

Copied!
28
0
0

Testo completo

(1)

Equazioni differenziali ordinarie 1

A. Sommariva

2

Keywords: Problema di Cauchy. Teoremi di Cauchy in piccolo e grande. Metodi di Eulero esplicito (con stima errore). Metodo di Eulero implicito. Linear Multistep methods (LMM). Metodi LMM per quadratura. Metodi di Adams-Bashforth, Adams-Moulton, Nystrom. Consistenza. Consistenza e LMM. stabilit`a . Root condition. Convergenza. Convergenza e suo legame con consistenza e stabilit`a . Convergenza Eulero esplicito (con dimostrazione). A-stabilit`a : problema test.

Problema test. Problemi stiff. Regioni di stabilit`a di Eulero esplicito, implicito e Crank-Nicolson. Barriere di Dahlquist. Metodi di Runge-Kutta (di ordine 2 e 4).

Revisione: 11 maggio 2021

—————

1. Problema di Cauchy

Si determini la funzione y tale che

 y

0

(x) = f (x, y(x)), x ≥ x

0

y(x

0

) = y

0

(1) dove f `e a valori in R

n

e definita in un sottoinsieme Ω di R×R

n

, con (x

0

, y

0

) ∈ Ω.

Nota. Di seguito supporremo che tale problema abbia una sola soluzione.

Esempio. [Equazione differenziale ordinaria]

 y

0

(x) = y(x), x ≥ 0

y(0) = 1 (2)

la cui soluzione `e exp (x), `e un problema di Cauchy con f (x, y(x)) = y(x).

Esempio. [Sistema di equazioni differenziali ordinarie]

y

10

(x) = −y

2

(x), x ≥ 0 y

20

(x) = y

1

(x), x ≥ 0 y

1

(0) = 1, y

2

(0) = 0

(3)

la cui soluzione `e y(x) = (y

1

(x), y

2

(x)) = (cos (x), sin (x)), `e un problema di Cauchy con y = (y

1

, y

2

), x

0

= 0, y(x

0

) = (1, 0) e

f (x, y(x)) = f (x, y

1

(x), y

2

(x)) = (−y

2

(x), y

1

(x)).

(2)

Teorema 1.1 (Teorema di Picard-Lindel¨of). Sia D = [t

0

− ε, t

0

+ ε] × R

n

. Dato il problema ai valori iniziali

 y

0

(t) = f (t, y(t)), t ∈ [t

0

− ε, t

0

+ ε]

y(t

0

) = y

0

se

• f : D → R `e una funzione lipschitziana in y cio`e

|f (t, y

1

) − f (t, y

2

)| ≤ Kky

1

− y

2

k, (t, y

1

), (t, y

2

) ∈ D

• f `e continua in t allora per qualche ε > 0,

allora esiste un’unica soluzione y al problema ai valori iniziali sull’intervallo [t

0

− ε, t

0

+ ε].

Teorema 1.2 (Cauchy in piccolo, [2, p.7]). Si supponga che

• D sia un aperto connesso di R × R

n

;

• f : D → R sia una funzione continua in D;

• (t

0

, y

0

) un punto interno a D;

• la funzione f verifichi la condizione di Lipschitz

kf (t, y

1

) − f (t, y

2

)k ≤ Kky

1

− y

2

k, (t, y

1

), (t, y

2

) ∈ D.

per qualche K ≥ 0.

Allora esiste una unica funzione y definita su un intervallo [t

0

− α, t

0

+ α], per qualche α > 0 tale che

 y

0

(t) = f (t, y(t)), t ∈ [t

0

− α, t

0

+ α]

y(t

0

) = y

0

(4) Teorema 1.3 (Cauchy in grande, [5 , p.331]). Sia f : [a, b] × R

n

→ R tale che

• f (t, y), t ∈ [a, b], y ∈ R

n

continua nella prima variabile,

• soddisfi rispetto alla seconda variabile la condizione di Lipschitz kf (t, y

1

) − f (t, y

2

)k ≤ Kky

1

− y

2

k, t ∈ [a, b], y

1

, y

2

∈ R

n

. per qualche norma vettoriale k · k e K ≥ 0.

Allora il problema di Cauchy

 y

0

(t) = f (t, y(t)), t ∈ [a, b]

y(a) = y

0

(5)

ha una e una sola soluzione y in [a, b], per un arbitrario y

0

∈ R

n

.

(3)

Nota.

• Nel teorema di Cauchy in piccolo si fornisce un teorema di esistenza e unicit`a locale.

• Nel teorema di Cauchy in grande si fornisce un teorema di esistenza e unicit`a globale.

Nota. [Soluzioni multiple] Esistono casi in cui il problema di Cauchy ha soluzioni multiple. Ad esempio, il problema

 y

0

(x) = 2py(x), x > 0

y(x

0

) = 0 (6)

ha per soluzioni, per α ∈ R

+

y(x) =

 y(x) = (x − α)

2

, x ≥ α

y(x) = 0, altrimenti. (7)

1.1. Metodo di Eulero esplicito

Indichiamo con I(x, x) il pi`u piccolo intervallo aperto contenente x e x (cio`e (x, x) oppure (x, x)). Assumendo che la soluzione sia sufficientemente regolare, abbiamo dalla formula di Taylor per x ≈ x, ξ ∈ I(x, x) e (1)

y(x) = y(x) + y

0

(x)(x − x) + y

00

(ξ)(x − x)

2

2

≈ y(x) + y

0

(x)(x − x) = y(x) + f (x, y(x))(x − x) (8) cio`e

y(x) ≈ y(x) + f (x, y(x))(x − x)

Metodo. [Eulero esplicito, 1768-1770] Tale metodo consiste nell’approssimare y(x

k+1

) con u

k+1

dove

u

k+1

= u

k

+ h · f (x

k

, u

k

), u

0

= y(x

0

), (9) ove h = x

k+1

− x

k

.

Supponiamo di voler determinare una approssimazione della soluzione nei punti equispaziati x

k+1

= x

0

+ kh = x

k

+ h con k > 0.

Da

y(x) ≈ y(x) + f (x, y(x))(x − x) ponendo x = x

k+1

, x = x

k

y(x

k+1

) ≈ y(x

k

) + h · f (x

k

, y(x

k

)). (10)

(4)

1.2. Metodo di Eulero implicito

Similmente, supposto x

k+1

= x

0

+ kh = x

k

+ h con k > 0, da y(x) ≈ y(x) + f (x, y(x))(x − x) scelti x = x

k

, x = x

k+1

abbiamo

y(x

k

) ≈ y(x

k+1

) + f (x

k+1

, y(x

k+1

))(x

k

− x

k+1

), (11) e quindi portato il termine f (x

k+1

, y(x

k+1

))(x

k

− x

k+1

) nel membro di sinistra

y(x

k+1

) ≈ y(x

k

) + h · f (x

k+1

, y(x

k+1

)). (12) Metodo. [Metodo di Eulero implicito] Tale metodo consiste nell’approssimare y(x

k+1

) con u

k+1

definito da

u

k+1

= u

k

+ h · f (x

k+1

, u

k+1

), u

0

= y(x

0

) (13)

Nota. [Risoluzione equazioni nonlineari] Evidentemente ad ogni iterazione del metodo di Eulero implicito

u

k+1

= u

k

+ h · f (x

k+1

, u

k+1

), u

0

= y(x

0

) si richiede di risolvere un’equazione nonlineare nella variabile z del tipo

z = u

k

+ h · f (x

k+1

, z) la cui soluzione pu`o essere calcolata utilizzando ad esempio

• col metodo di Newton o

• del punto fisso o

• delle secanti.

Nota. [Metodi di Eulero e sistemi di equazioni differenziali] Il problema di Cauchy `e definito da

 y

0

(x) = f (x, y(x)), x ≥ x

0

y(x

0

) = y

0

(14) dove f `e a valori in R

n

e definita in un sottoinsieme Ω di R×R

n

, con (x

0

, y

0

) ∈ Ω.

Nei casi multivariati con n > 1, indipendentemente dalla derivazione dovuta alla espansione di Taylor, i metodi

• Eulero esplicito: u

k+1

= u

k

+ h · f (x

k

, u

k

), u

0

= y(x

0

)

• Eulero implicito: u

k+1

= u

k

+ h · f (x

k+1

, u

k+1

), u

0

= y(x

0

),

possono essere utilizzati, in quanto la sequenza `e ben definita.

(5)

2. Linear Multistep Methods

Definizione 2.1 (Linear Multistep Methods ). I metodi Linear Multistep (abbreviati con LMM) approssimano y(x

n

) con u

n

, dove x

n

= x

0

+ nh e

u

n+1

=

p

X

j=0

a

j

u

n−j

+ h

p

X

j=−1

b

j

f (x

n−j

, u

n−j

)

Nota. Si osservi che

• Sono metodi per cui se voglio calcolare u

n+1

necessitano u

n−p

, . . . , u

n

(si chia- mano metodi a p + 1 passi). Siccome inizialmente si dispone solo di u

0

, per calcolare u

1

, . . . , u

p

, necessari ad innescare il metodo, si utilizzano di solito al- tre strategie (come ad esempio applicare pi`u volte metodi a un passo, cio`e in cui p = 0, come ad esempio Eulero implicito).

• Se b

−1

= 0 allora il metodo `e esplicito, altrimenti `e implicito.

Nota. Osserviamo che il metodo di Eulero esplicito u

n+1

= u

n

+ h · f (x

n

, u

n

) e Eulero implicito

u

n+1

= u

n

+ h · f (x

n+1

, u

n+1

) hanno la forma

u

n+1

=

p

X

j=0

a

j

u

n−j

+ h

p

X

j=−1

b

j

f (x

n−j

, u

n−j

) ponendo rispettivamente

• Eulero esplicito: p = 0, a

0

= 1, b

−1

= 0, b

0

= 1,

• Eulero implicito: p = 0, a

0

= 1, b

−1

= 1, b

0

= 0.

2.1. Metodi basati sull’integrazione numerica ([8, 125]) Si supponga di dover studiare il problema di Cauchy

 y

0

(x) = f (x, y(x)), x ≥ x

0

y(x

0

) = y

0

(15) e di dover approssimare la sua soluzione y nei punti equispaziati x

k

= x

0

+ kh.

Osserviamo che

y(x

n+k

) = y(x

n−j

) + Z

xn+k

xn−j

y

0

(t)dt (16)

= y(x

n−j

) + Z

xn+k

xn−j

f (t, y(t))dt (17)

(6)

Sostituiamo ora l’integranda con il polinomio di grado al pi´u p

π

p

(x) =

p

X

i=0

f (x

n−i

, y(x

n−i

))L

i

(x)

che interpola le coppie (x

l

, f (x

l

, y(x

l

)) per l = n, n − 1, . . . , n − p, dove

L

i

(x) =

p

Y

k=0,k6=i

x − x

n−k

x

n−i

− x

n−k

.

Ricaviamo cos´ı, da f (x, y(x)) ≈ π

p

(x) = P

q

i=0

f (x

n−i

, y(x

n−i

))L

i

(x), posto β

p,i(k,j)

= 1

h Z

xn+k

xn−j

L

i

(t)dt = Z

k

−j p

Y

m=0,m6=i

s + m

−i + m ds, i = 0, 1, . . . , p i metodi di tipo LMM, a pi`u passi

y(x

n+k

) = y(x

n−j

) + Z

xn+k

xn−j

f (t, y(t))dt

≈ y(x

n−j

) + Z

xn+k

xn−j p

X

i=0

f (x

n−i

, y(x

n−i

))L

i

(t)dt

= y(x

n−j

) +

p

X

i=0

f (x

n−i

, y(x

n−i

)) Z

xn+k

xn−j

L

i

(t)dt

= y(x

n−j

) + h

p

X

i=0

β

p,i(k,j)

f (x

n−i

, y(x

n−i

)). (18)

2.2. Metodi di Adams-Bashforth (1883) Ponendo k = 1, j = 0 in

y(x

n+k

) ≈ y(x

n−j

) + h

p

X

i=0

β

p,i(k,j)

f (x

n−i

, y(x

n−i

)).

otteniamo la famiglia di metodi espliciti di Adams-Bashforth (1883)

u

n+1

= u

n

+

p

X

i=0

β

p,i(1,0)

f (x

n−i

, u

n−i

), u

n−i

≈ y(x

n−i

).

Alcuni esempi sono i metodi a p + 1 passi:

• Adams-Bashforth (p=0): u

n+1

= u

n

+ hf

n

(Eulero esplicito);

• Adams-Bashforth (p=1): u

n+1

= u

n

+

h2

(3f

n

− f

n−1

);

(7)

• Adams-Bashforth (p=2): u

n+1

= u

n

+

12h

(23f

n

− 16f

n−1

+ 5f

n−2

);

• Adams-Bashforth (p=3): u

n+1

= u

n

+

24h

(55f

n

− 59f

n−1

+ 37f

n−2

− 9f

n−3

).

dove f

n−3

= f (x

n−3

, u

n−3

), f

n−2

= f (x

n−2

, u

n−2

), f

n−1

= f (x

n−1

, u

n−1

), f

n

= f (x

n

, u

n

).

2.3. Metodi di Adams-Moulton (1926) Ponendo k = 0, j = 1 in

y(x

n+k

) ≈ y(x

n−j

) + h

p

X

i=0

β

p,i(k,j)

f (x

n−i

, y(x

n−i

)).

otteniamo la famiglia di metodi impliciti di Adams-Moulton (1926) u

n

= u

n−1

+ h

p

X

i=0

β

(0,1)p,i

f (x

n−i

, u

n−i

), u

n−i

≈ y(x

n−i

).

Sostituendo n + 1 al posto di n, abbiamo cos´ı u

n+1

= u

n

+ h

p

X

i=0

β

p,i(0,1)

f (x

n+1−i

, u

n+1−i

)

= u

n

+ h

p−1

X

j=−1

β

(0,1)p,j

f (x

n−j

, u

n−j

). (19)

Alcuni esempi di metodi di Adams-Moulton sono i metodi impliciti

• Adams-Moulton (p=0): u

n+1

= u

n

+ hf

n+1

(Eulero implicito);

• Adams-Moulton (p=1): u

n+1

= u

n

+

h2

(f

n+1

+ f

n

) (Crank-Nicolson);

• Adams-Moulton (p=2): u

n+1

= u

n

+

12h

(5f

n+1

+ 8f

n

− f

n−1

);

• Adams-Moulton (p=3): u

n+1

= u

n

+

24h

(9f

n+1

+ 19f

n

− 5f

n−1

+ f

n−2

).

dove f

n−2

= f (x

n−2

, u

n−2

), f

n−1

= f (x

n−1

, u

n−1

), f

n

= f (x

n

, u

n

), f

n+1

= f (x

n+1

, u

n+1

).

• Si verifica facilmente che tanto i metodi Adams-Bashforth quanto gli Adams- Moulton sono di tipo Linear Multistep Methods.

• The Adams-Bashforth methods were designed by John Couch Adams to solve a differential equation modelling capillary action due to Francis Bashforth. Ba- shforth (1883) published his theory and Adams’numerical method (Goldstine 1977).

• The Adams-Moulton methods are solely due to John Couch Adams, like the

Adams-Bashforth methods. The name of Forest Ray Moulton became associa-

ted with these methods because he realized that they could be used in tandem

with the Adams-Bashforth methods as a predictor-corrector pair.

(8)

2.4. Metodi di Nystr¨om (1925) Ponendo k = 1, j = 1 in

y(x

n+k

) ≈ y(x

n−j

) + h

p

X

i=0

β

p,i(k,j)

f (x

n−i

, y(x

n−i

)).

otteniamo la famiglia di metodi di Nystr¨om (1925)

u

n+1

= u

n−1

+ h

p

X

i=0

β

p,i(1,1)

f (x

n−i

, u

n−i

), u

n−i

≈ y(x

n−i

).

Un esempio `e il metodo del punto medio u

n+1

= u

n−1

+ 2hf

n

. Nota.

• Un metodo molto noto in questa famiglia `e quello di Milne

u

n+1

= u

n−1

+ (h/3) (f

n−1

+ 4f

n

+ f

n+1

)

ottenuto ponendo in (18) i parametri k = 0, j = 2, p = 2 e sostituendo n con n + 1,

• Esistono altre grandi famiglie di metodi LMM, come i metodi BDF (cf. [6, p.437]), utili in problemi stiff.

3. Consistenza

Definizione 3.1 (Errori di troncamento, [2], p.112). Si risolva un problema di Cau- chy (1) nel compatto [x

0

, b] con il metodo LMM

u

n+1

=

p

X

j=0

a

j

u

n−j

+ h

p

X

j=−1

b

j

f (x

n−j

, u

n−j

), u

k

≈ y(x

k

) con y soluzione di (1), x

k

= x

0

+ kh, k = 0, . . . , N , b − h < x

N

≤ b, e sia

τ

n

(h) := 1 h ·

y(x

n+1

) − (

p

X

j=0

a

j

y(x

n−j

) + h

p

X

j=−1

b

j

f (x

n−j

, y(x

n−j

)))

 .

• La quantit`a τ

n

(h) chiama errore locale di troncamento del metodo.

• La quantit`a τ (h) = max

n=0,...

n

(h)|, assunto che sia stato commesso errore nullo nei passi iniziali, si chiama errore globale di troncamento del metodo.

• Un metodo per cui τ (h) tende a 0, quando h → 0 si dice consistente.

• Se τ (h) = O(h

k

) allora il metodo ha ordine di consistenza ”k”.

(9)

La consistenza rende conto di come la soluzione y del problema di Cauchy verifichi lo schema discreto del metodo linear multistep

u

n+1

=

p

X

j=0

a

j

u

n−j

+ h

p

X

j=−1

b

j

f (x

n−j

, u

n−j

).

Osserviamo inoltre che per metodi espliciti la quantit´a detta residuo

y(x

n+1

) − (

p

X

j=0

a

j

y(x

n−j

) + h

p

X

j=−1

b

j

f (x

n−j

, y(x

n−j

)))

non `e altro che l’errore dello schema numerico, qualora si supponga u

n−j

= y(x

n−j

), j = 0, . . . , p.

3.1. Consistenza Eulero esplicito

Teorema 3.2 (Errore locale di troncamento di Eulero esplicito). Sia y ∈ C

2

([a, b]) l’unica soluzione del problema di Cauchy (1) in [a, b] e siano x

k

= a + kh, b − h <

x

N

≤ b. Allora l’errore locale di troncamento di Eulero esplicito risulta

τ

k

(h) = y

00

k

)h 2 per qualche ξ

k

∈ (x

k

, x

k+1

), k ∈ 0, . . . , N − 1.

Nota. Se y ∈ C

2

(a, b), allora per M = max

x∈[a,b]

|y

00

(x)|

τ (h) = max

n=0,...,N

k

(h)| = max

n=0,...,N

y

00

k

)h 2

≤ M h 2 ovvero il metodo di Eulero esplicito `e consistente.

Osserviamo che se y ∈ C

2

([a, b]), dalla formula di Taylor

y(x

k+1

) = y(x

k

) + y

0

(x

k

)(x

k+1

− x

k

) + y

00

(ξ)(x

k+1

− x

k

)

2

2

per qualche ξ ∈ (x

n

, x

n+1

) ovvero da h = x

k+1

− x

k

, y

0

(x

k

) = f (x

k

, y(x

k

)) y(x

k+1

) − y(x

k

) − h · f (x

k

, y(x

k

)) = y

00

(ξ)h

2

2 Di conseguenza,

τ

k

(h) = 1

h (y(x

k+1

) − y(x

k

) − hf (x

k

, y(x

k

)))

= 1

h

y

00

k

)h

2

2 = y

00

k

)h

2 . (20)

(10)

3.2. Consistenza Eulero implicito

Teorema 3.3 (Errore locale di troncamento di Eulero implicito). Sia y ∈ C

2

([a, b]) l’unica soluzione del problema di Cauchy (1) in [a, b] e siano x

k

= a + kh, b − h <

x

N

≤ b. Allora l’errore locale di troncamento di Eulero implicito risulta

τ

k

(h) = − y

00

k

)h 2 per qualche ξ ∈ (x

k

, x

k+1

), k = 0, . . . , N − 1.

Nota. Se y ∈ C

2

(a, b), allora per M = max

x∈[a,b]

|y

00

(x)|

τ (h) = max

n=0,...,N

k

(h)| = max

k=0,...,N −1

−y

00

k

)h 2

≤ M h

2 (21)

ovvero il metodo di Eulero implicito `e consistente.

Osserviamo che se y ∈ C

2

([a, b]), dalla formula di Taylor

y(x

k

) = y(x

k+1

) + y

0

(x

k+1

)(x

k

− x

k+1

) + y

00

k

)(x

k

− x

k+1

)

2

2

per qualche ξ

k

∈ (x

k

, x

k+1

) ovvero da h = x

k+1

− x

k

, y

0

(x

k

) = f (x

k

, y(x

k

)) y(x

k+1

) − y(x

k

) − h · f (x

k+1

, y(x

k+1

)) = − y

00

k

i)h

2

2 Di conseguenza,

τ

k

(h) = 1

h (y(x

k+1

) − y(x

k

) − hf (x

k

, y(x

k

)))

= 1

h · −y

00

k

)h

2

2 = − y

00

k

)h

2 . (22)

3.3. Consistenza LMM

Teorema 3.4 ([6, p.437]). Un metodo linear multistep

• `e consistente se e solo se

p

X

j=0

a

j

= 1, −

p

X

j=0

ja

j

+

p

X

j=−1

b

j

= 1,

• se y ∈ C

q+1

per q ≥ 1, ha ordine di consistenza q se e solo se `e consistente e

p

X

j=0

(−j)

i

a

j

+ i

p

X

j=−1

(−j)

i−1

b

j

= 1, i = 2, . . . , q.

(11)

Esempio.

• Il metodo di Eulero Esplicito ha parametri a

0

= 1, b

−1

= 0 e b

0

= 1, p = 0 ed

´e immediato vedere che vale formula relativa alla consistenza di ordine 1.

• Il metodo di Eulero Implicito ha parametri a

0

= 1, b

−1

= 1 e b

0

= 0, p = 0 ed

´e immediato vedere che vale formula relativa alla consistenza di ordine 1.

• Il metodo di Crank-Nicolson ha parametri a

0

= 1, b

−1

= 1/2, b

0

= 1/2, p = 0, ed ´e immediato vedere che vale formula relativa alla consistenza di ordine 1.

Inoltre per i = 2 si ha

p

X

j=0

(−j)

i

a

j

+ 2

p

X

j=−1

(−j)

i−1

b

j

= . . . = 2b

−1

= 1

e quindi se y ∈ C

3

([a, b]) ha consistenza di ordine 2.

4. Stabilit`a di un metodo LMM

Definizione 4.1 (Zero stabile, [9, p.332]). Si consideri un metodo numerico LMM a p passi per la soluzione di problemi di Cauchy (1) nell intervallo [a, b]. Siano x

k

= a + kh

N

con h

N

= (b − a)/N , k = 0, . . . , N . Tale metodo si dice zero-stabile se qualsiasi siano le sequenze {u

(hkN)

}, {v

k(hN)

} che sono state generate dal metodo con dati iniziali rispettivamente u

(h0 N)

, . . . , u

(hp−1N)

, v

0(hN)

, . . . , v

(hp−1N)

, abbiamo

max

s=0,...,N

|u

(hkN)

− v

k(hN)

| ≤ K max

s=0,...,p−1

(|u

(hs N)

− v

s(hN)

|) per h

N

≤ h

, con K indipendente da h

N

.

• Questo concetto di stabilit`a viene detto zero-stabilit`a, in quanto determinato esclusivamente dallo studio relativo al problema (1) con f (x, y) = 0 (cf. [7, p.440]).

• In queste note ci interesseremo alla convergenza e consistenza di metodi LMM, ma esistono definizioni che permettono l’analisi di altri metodi pi´u generali.

In generale risulta tedioso studiare caso per caso la stabilit`a dei LMM u

n+1

=

p

X

j=0

a

j

u

n−j

+ h

p

X

j=−1

b

j

f (x

n−j

, u

n−j

)

Risulta pi`u semplice studiare la cosidetta root-condition che `e un concetto equiva- lente.

In particolare questa `e verificata se e solo se il polinomio caratteristico ρ(z) = z

p+1

p

X

k=0

a

k

z

k

ha tutte le radici nel disco B(0, 1) ⊂ C e quelle in ∂B(0, 1) hanno molteplicit`a 1.

Esempio. Nel caso di

(12)

• Eulero esplicito: u

n+1

= u

n

+ hf

n

,

• Eulero implicito: u

n+1

= u

n

+ hf

n+1

,

• Crank-Nicolson: u

n+1

= u

n

+

h2

(f

n+1

+ f

n

), abbiamo

u

n+1

=

p

X

j=0

a

j

u

n−j

+ h

p

X

j=−1

b

j

f (x

n−j

, u

n−j

) con a

0

= 1, p = 0, da cui

ρ(z) = z

p+1

p

X

k=0

a

k

z

k

= z − 1

che ha quale unica soluzione z

= 1 che ovviamente `e in ∂B(0, 1) e ha molteplicit`a 1.

Quindi tali metodi sono zero-stabili.

5. Convergenza di un metodo LMM

Definizione 5.1 (Convergenza). Supponiamo di analizzare il problema di Cauchy nel- l’intervallo compatto I = [x

0

, x fin]. Siano x

s

= x

0

+ sh

N

, con N h

N

= x

f in

− x

0

,

• y

(hN)

= {y(x

k

)}

k=0,...,N

la soluzione esatta di un fissato problema di Cauchy,

• u

(hN)

= {u

k

}

k=0,...,N

dove u

k

`e l’approssimazione di y(x

k

) fornita nei punti x

k

da un metodo numerico a p + 1 passi.

Un metodo Linear Multistep a p + 1 passi si dice convergente se qualora i passi iniziali u

(h0 N)

, . . . , u

(hpN)

sono tali che

η(h

N

) = max

0≤k≤p

|y

k(hN)

− u

(hk N)

| → 0 per h

N

→ 0 si ha che

ky

(hN)

− u

(hN)

k

→ 0 per h

N

→ 0.

Qualora η(h

N

) ≤ C

1

h

q

si ha ky

(hN)

− u

(hN)

k

≤ C

2

h

q

, con C

1

, C

2

indipendenti da h, allora il metodo si dice convergente con ordine q.

Importante 5.2. Un teorema dovuto a Lax e Richtmyer (1956), mostra che un metodo

`e convergente se e solo se consistente e stabile.

Di conseguenza, se vengono verificate

• le condizioni di consistenza

• la root condition,

un metodo `e convergente.

(13)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0

0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18

8 16 32 64 128

Figura 1: Si consideri il problema di Cauchy y0(x) = y(x) in [0, 1] con dato iniziale y(0) = 1, avente soluzione y(x) = exp(x) e si applichi il metodo di Eulero Esplicito un+1 = un+ hkf (xn, un) per approssimare la soluzione nei punti xn = nhk, n = 0, . . . , Nkove hk = 1/Nk, con dato iniziale u0= 1 + hkper i valori N1 = 8, N2= 16, N3= 32, N4= 64, N5= 128. Nel grafico in figura sono illustrati gli errori rispetto alla soluzione esatta, e il metodo sembra essere convergente.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

10-10 100 1010 1020 1030 1040

1050 Metodo non convergente, ma consistente (Dahlquist, 1956) 10

20 40 80

Figura 2: Si consideri il problema di Cauchy y0(x) = y(x) in [0, 1] con dato iniziale y(0) = 1, avente soluzione y(x) = exp(x) e si applichi il metodo consistente un+2 = −4un+1 + 5un+ hk(4f (xn+1, un+1) + 2f (xn, un)) per approssimare la soluzione nei punti xn= nhk, n = 0, . . . , Nk

ove hk= 1/Nk, con dato iniziale u0= 1, u1= exp(hk) per i valori Nk= 2k−1· 10. Nel grafico in fi- gura sono illustrati gli errori rispetto alla soluzione esatta. Gli esperimenti mostrano che il metodo, suggerito quale esempio da Dahlquist nel 1956 in [4, p.37], non sembra convergere (anzi, al crescere di Nkdiverge maggiormente).

(14)

Corollario 5.3. I metodi di Eulero esplicito ed Eulero implicito sono convergenti.

Teorema 5.4 (Convergenza LMM (cf.[2, p.116]), facoltativo). Sia u

n+1

= P

p

j=0

a

j

u

n−j

+ h P

p

j=−1

b

j

f (x

n−j

, u

n−j

) e si supponga

• si debba studiare il problema di Cauchy (1) in [x

0

, xfin], che f : [x

0

, xfin]×R → R sia continua e L-lipschitziana, rispetto la seconda variabile e che la soluzione y ∈ C

(1)

([x

0

, xfin]),

• i dati iniziali siano calcolati in modo che η(h) = max

i=0,...,p

|y(x

i

) − u

i

| → 0, per h → 0;

• il metodo sia consistente;

• a

j

≥ 0, j = 0, . . . , p;

• il passo di discretizzazione h sia tale che h ≤ h

= 1/(2c), dove c = L P

p j=−1

|b

j

| e L `e la costante di Lipschitz di f .

Allora il metodo LMM converge ed inoltre esistono C

1

, C

2

positive tali che per ogni n

|y(x

n

) − u

n

| ≤ C

1

η(h) + C

2

τ (h).

Se y ∈ C

(m+1)

([x

0

, xfin]), il metodo ha ordine di consistenza m e gli errori iniziali soddisfano η(h) = O(h

m

) allora il metodo `e di ordine m.

Nota. Nelle ipotesi del teorema precedente, per ricavare la convergenza chiedava- mo:

• i dati iniziali siano calcolati in modo che η(h) = max

i=0,...,p

|y(x

i

) − u

i

| → 0, per h → 0;

• il metodo sia consistente;

• a

j

≥ 0, j = 0, . . . , p;

• il passo di discretizzazione h sia tale che h ≤ 1/(2c), dove c = L P

p

j=−1

|b

j

| e L `e la costante di Lipschitz di f .

1. Se prendiamo un metodo di Adams-Bashforth o Adams-Moulton di quelli espo- sti, sono tutti consistenti con ordine p + 1. Inoltre a

0

= 1, a

1

= 0, . . . , a

p

= 0. Di conseguenza, essendo gli zeri del polinomio caratteristico z

p+1

− 1 = 0 uguali alle radici p + 1-esime primitive dell’unit´a, tutti i metodi esposti sono convergenti.

2. Se la soluzione `e p + 2 volte derivabile con continuit`a, il metodo ha ordine di consistenza p + 1 e gli errori iniziali soddisfano η(h) = O(h

m

) allora il metodo `e di ordine p + 1.

In particolare, nelle ipotesi richieste,

(15)

• il metodo di Eulero esplicito, avendo ordine di consistenza 1, `e convergente con ordine di convergenza 1;

• il metodo di Eulero implicito, avendo ordine di consistenza 1, `e convergente con ordine di convergenza 1;

• il metodo di Crank-Nicolson, avendo ordine di consistenza 2, `e convergente con ordine di convergenza 2.

6. Regione di assoluta stabilit`a

Nell’ambito delle equazioni differenziali ordinarie, esistono vari criteri di stabilit´a.

Un classico problema `e quello di vedere se un metodo `e assolutamente stabile (spesso A-stabile).

Definito il problema di Cauchy

 y

0

(x) = λy(x), x ≥ 0

y(0) = 1 (23)

per un certo λ ∈ C con <(λ) < 0, visto che l’unica soluzione `e y(x) = exp (λx) si cerca di definire il passo h cosicch`e il metodo numerico per la soluzione del problema di Cauchy (1) abbia lo stesso comportamento asintotico di exp (λx).

La regione di assoluta stabilit`a `e composta dagli hλ, per cui il metodo numerico con passo h `e tale da avere lo stesso comportamento asintotico del problema di Cauchy (23) relativo al parametro λ (con <(λ) < 0).

Nota. [Dahlquist, 1979] I didn’t like all these strong, perfect, absolute, generali- zed, super, hyper, complete and so on in mathematical definitions, I wanted something neutral; and having been impressed by David Young’s property A, I chose the term A-stable.

Nota. Stabilire la stabilit`a per il problema di Cauchy

 y

0

(x) = f (x, y(x)), x ≥ 0

y(x

0

) = y

0

(24)

`e in generale complicato. Se invece consideriamo

 y

0

(x) = λy(x) + g(x), x ≥ 0

y(0) = y

0

(25)

la questione `e pi`u semplice.

Ricordiamo che la soluzione di (25) `e y(x) = y

0

· exp (λx) +

Z

x 0

exp (λ(x − t))g(t)dt (cf. [1, p.369]).

Sia y la soluzione di

 y

0

(x) = λy(x) + g(x), x ≥ 0 y(0) = y

0

(26)

(16)

e y



quella di

 y

0

(x) = λy(x) + g(x), x ≥ 0

y(0) = y

0

+  (27)

Posto z



= y



− y, da (26), (27),

 z

0

(x) = λz



(x), x ≥ 0

z



(0) =  (28)

la cui soluzione `e z



=  · exp (λx).

Di solito nelle applicazioni ci si interessa al caso λ < 0 o complesso con parte reale negativa. In questi casi z



→ 0 per n → ∞ e quindi l’effetto delle perturbazioni si annulla per valori grandi di x.

Si desidera che il metodo numerico goda delle stesse propriet`a e la risposta la si ha nuovamente dallo studio della regione di stabilit`a.

Nota. Ricordiamo a tal proposito che dalla formula di Eulero, se z = a + ib =

<(z) + i=(z) allora

exp (z) = exp (a) · (cos (b) + i sin (b)).

Quindi, visto che per qualsiasi b si ha che |cos(b) + i sin(b)| = 1, se <(λ) < 0

| exp (λx)| = |exp(<(λx))(cos (=(λx)) + i sin (=(λx)))|

= |exp(<(λx))|| cos (=(λx)) + i sin (=(λx))|

= |exp (<(λx))| → 0, per x → ∞.

Definizione 6.1 (Problema stiff (Curtiss-Hirschfelder, 1952)). Un problema di Cau- chy

 y

0

(x) = λy(x), x ≥ 0

y(0) = 1. (29)

si dice stiff, quando <(λ)  0 (cio`e <(λ) `e molto grande in valore assoluto).

6.1. Regione di assoluta stabilit`a: Eulero esplicito Nel caso del metodo di Eulero esplicito,

u

n

= u

n−1

+ hf (x

n−1

, u

n−1

) = (1 + hλ)u

n−1

, u

0

= 1.

Visto che

u

n

= (1 + hλ)u

n−1

= (1 + hλ)

2

u

n−2

= . . . = (1 + hλ)

n

u

0

= (1 + hλ)

n

, necessariamente

u

n

= (1 + hλ)

n

e quindi

u

n

→ 0 se e solo se |1 + hλ| < 1

il che significa che la regione di assoluta stabilit´a consiste del disco aperto del piano complesso di centro −1 e raggio 1.

Di conseguenza,

(17)

−4 −3 −2 −1 0 1 2

−3

−2

−1 0 1 2

Figura 3: In magenta: regione di assoluta stabilit`a di Eulero esplicito: disco unitario centrato in (−1, 0).

• fissato λ, il metodo risulta stabile se e solo se si sceglie un passo sufficientemente piccolo;

• se λ ∈ R

, allora bisogner´a scegliere un passo minore di h

= 2/|λ|.

• nel caso di problemi stiff, cio`e con <(λ)  0, si deve scegliere un passo h molto piccolo affinch`e la soluzione di Eulero esplicito tenda a 0.

6.2. Regione di assoluta stabilit`a: Eulero implicito Nel caso del metodo di Eulero implicito,

u

n

= u

n−1

+ hf (x

n

, u

n

) = u

n−1

+ hλu

n

, u

0

= 1.

Portando a primo membro hλu

n

, dividendo i membri per 1 − hλ u

n

= u

n−1

1 − hλ , da cui posto C =

1−hλ1

,

u

n

= Cu

n−1

= C

2

u

n−2

= . . . = C

n

u

0

= C

n

=

 1

1 − hλ



n

ovvero

u

n

= C

n

, C = 1 1 − hλ e quindi

u

n

→ 0 se e solo se 1

|1 − hλ| < 1.

(18)

−6 −5 −4 −3 −2 −1 0 1

−6

−4

−2 0 2 4 6

Figura 4: In magenta: regione di assoluta stabilit`a di Eulero implicito, semipiano negativo <(hλ) < 0.

Essendo <(λ) < 0, si vede facilmente che |

1−hλ1

| < 1 per qualsiasi h. Infatti, hλ = a + ib con a < 0, ci`o `e vero se e solo se

1

|1 − hλ| < 1 ⇔ 1 < |1 − hλ| = p

(1 − a)

2

+ b

2

ovvero, elevando ai quadrati entrambi i membri, se e solo se

1 < (1 − a)

2

+ b

2

ovviamente verificata in quanto a < 0, a, b ∈ R. La regione di ass. stabilit`a `e tutto il semipiano negativo <(hλ) < 0.

Nota. Questa propriet`a suggerisce di applicare Eulero implicito invece di Eulero esplicito per risolvere numericamente un problema di Cauchy di tipo stiff.

6.3. Regione di assoluta stabilit`a: Crank-Nicolson

Nel caso del metodo di Crank-Nicolson, da f (x, y) = λy

u

n

= u

n−1

+ (h/2)(f (x

n

, u

n

) + f (x

n−1

, u

n−1

))

= u

n−1

+ (h/2)λ(u

n

+ u

n−1

), u

0

= 1 (30) Quindi,

(1 − hλ

2 )u

n

= u

n−1

+ hλ 2 u

n−1

cio`e

2 − hλ

2 · u

n

= 2 + hλ 2 · u

n−1

e di conseguenza

u

n

= 2 + hλ

2 − hλ u

n−1

(19)

−6 −5 −4 −3 −2 −1 0 1

−6

−4

−2 0 2 4 6

Figura 5: In magenta: regione di assoluta stabilit`a di Crank-Nicolson, semipiano negativo <(hλ) < 0.

Posto C =

2+hλ2−hλ

, essendo u

n

= Cu

n−1

, otteniamo come in precedenza u

n

= Cu

n−1

= C

2

u

n−2

= . . . = C

n

u

0

= C

n

e quindi

u

n

=  2 + hλ 2 − hλ



n

da cui

u

n

→ 0 se e solo se |2 + hλ|

|2 − hλ| < 1.

Da <(λ) < 0, |

2+hλ2−hλ

| < 1 per h > 0. Infatti, se hλ = a + ib, a < 0

|2 + hλ|

|2 − hλ| = |2 + (a + ib)|

|2 − (a + ib)| = |(2 + a) + ib|

|(2 − a) + ib| = p(2 + a)

2

+ b

2

p(2 − a)

2

+ b

2

< 1 in quanto (2 + a)

2

< (2 − a)

2

, qualora a < 0.

Ne segue che la regione di assoluta stabilit`a `e tutto il semipiano negativo <(hλ) <

0.

6.4. A-stabilit´a e Barriere LMM

Definizione 6.2. Un metodo numerico `e detto A-stabile se la sua regione di stabilit`a assoluta contiene tutto il semipiano negativo.

Valgono le seguenti barriere di stabilit`a (Dahlquist, 1963) Teorema 6.3. Nessun metodo LMM esplicito `e A-stabile.

Teorema 6.4. Nessun metodo LMM implicito di ordine maggiore di 2 `e A-stabile.

(20)

7. Metodi di Runge-Kutta

Sia h = (xfin − x

0

)/N

h

, x

n

= x

0

+ nh, n = 0, . . . , N

h

, e supponiamo che y sufficientemente regolare sia la soluzione del problema di Cauchy (1) nell’intervallo [x

0

, xfin], ed f continua e L-lipschitziana rispetto la seconda variabile.

Consideriamo un metodo numerico, che diremo di Runge-Kutta, che definisca una sequenza u

n

tale che

y(x

n+1

) ≈ u

n+1

= u

n

+ hF (x

n

, u

n

; h) con

F (x, y; h) = γ

1

f (x, y) + γ

2

f (x + αh, y + βhf (x, y)).

Determiniamo i parametri γ

1

, γ

2

, α, β cos`ı da ottenere un metodo del second’ordine cio`e

τ (h) = max

n

(|τ

n

(h)|) = O(h

2

) dove

τ

n

(h) = y(x

n

) − u

n

h , u

n+1

= y

n

+ hF (x

n

, y

n

; h).

Teorema 7.1. Affinch´e il metodo di Runge-Kutta sia del second’ordine, necessita che γ

1

+ γ

2

= 1, γ

2

α = 1/2, γ

2

β = 1/2.

Per ottenere questo risultato usiamo la formula di Taylor bivariata, ovvero se g : Ω ⊂ R

2

→ R `e di classe C

2

, Ω aperto contenente (x

0

, y

0

), (x

0

+ h, y

0

+ k),

g(x

0

+ h, y

0

+ k) = g(x

0

, y

0

) + g

0x

(x

0

, y

0

)h + g

y0

(x

0

, y

0

)k + O(h

2

+ k

2

).

Denotate con f

x0

, f

y0

le derivate parziali rispetto al primo e secondo argomento di f , abbiamo per x

0

= x

n

, y

0

= y

n

, h = αh, k = βhf (x

n

, y

n

),

f (x

n

+αh, y

n

+βhf (x

n

, y

n

)) = f (x

n

, y

n

)+αhf

x0

(x

n

, y

n

)+βhf

y0

(x

n

, y

n

)f (x

n

, y

n

)+O(h

2

) e quindi

F (x

n

, y

n

; h) := γ

1

f (x

n

, y

n

) + γ

2

f (x

n

+ αh, y

n

+ βhf (x

n

, y

n

))

= γ

1

f (x

n

, y

n

) + γ

2

(f (x

n

, y

n

) + αhf

x0

(x

n

, y

n

) + βhf

y0

(x

n

, y

n

)f (x

n

, y

n

)) + O(h

2

).

da cui

u

n+1

= y

n

+ hF (x

n

, y

n

; h) = y

n

+ h(γ

1

f (x

n

, y

n

) + γ

2

(f (x

n

, y

n

) + αhf

x0

(x

n

, y

n

) + βhf

y0

(x

n

, y

n

)f (x

n

, y

n

))) + O(h

3

)

= y

n

+ h(γ

1

+ γ

2

)f (x

n

, y

n

) + h

2

γ

2

(αf

x0

(x

n

, y

n

) + βf

y0

(x

n

, y

n

)f (x

n

, y

n

))) + O(h

3

)

(21)

Facilmente, dalla formula di Taylor, se y `e sufficientemente regolare, y

n+1

= y

n

+ hy

(1)

(x

n

) + (h

2

/2)y

(2)

(x

n

) + O(h

3

)

= y

n

+ hf (x

n

, y

n

) + (h

2

/2)(f

x0

(x

n

, y

n

) + f

y0

(x

n

, y

n

)f (x

n

, y

n

)) + O(h

3

) Quindi affinch`e y

n+1

− u

n+1

= O(h

3

), per confronto con

u

n+1

= y

n

+ h(γ

1

+ γ

2

)f (x

n

, y

n

) + h

2

γ

2

(αf

x0

(x

n

, y

n

) + βf

y0

(x

n

, y

n

)f (x

n

, y

n

))) + O(h

3

)

basta richiedere

γ

1

+ γ

2

= 1, γ

2

α = 1/2, γ

2

β = 1/2.

Vediamo alcuni metodi in cui

γ

1

+ γ

2

= 1, γ

2

α = 1/2, γ

2

β = 1/2.

Metodo di Heun (α = 1), (scoperto nel 1900):

u

n+1

= u

n

+ h

2 (f (x

n

, u

n

) + f (x

n

+ h, u

n

+ hf (x

n

, u

n

))).

Metodo di Eulero modificato (α = 1/2):

u

n+1

= u

n

+ hf (x

n

+ h

2 , u

n

+ h

2 f (x

n

, u

n

)).

La scelta particolare di un maggior numero di vincoli permette, con qualche fatica, di calcolare un metodo di ordine 4 (scoperto da Kutta nel 1901). Posto

u

n+1

= u

n

+ h · f

1

+ 2f

2

+ 2f

3

+ f

4

6 ove

f

1

= f (x

n

, u

n

) f

2

= f (x

n

+ h

2 , u

n

+ h · f

1

2 ) f

3

= f (x

n

+ h

2 , u

n

+ h 2 f

2

)

f

4

= f (x

n

+ h, u

n

+ h · f

3

) (31) si ottiene un metodo del quart’ordine.

Gli argomenti che seguono sono facoltativi. Servono a dare una immagine pi`u completa sul tema dell’analisi numerica per la risoluzione di problemi di Cauchy.

Di seguito intendiamo mostrare, sotto opportune ipotesi e senza usare i teoremi

precedenti, la convergenza del metodo di Eulero esplicito.

(22)

Consideriamo il metodo di Eulero esplicito, con x

n

= x

0

+ nh per un prefissato passo h = (xfin − x

0

)/N . Sia y ∈ C

2

([x

0

, xfin]) soluzione di ( 1), e

u

n

= y(x

n−1

) + h · f (x

n−1

, y(x

n−1

)), u

n

= u

n−1

+ h · f (x

n−1

, u

n−1

).

Osserviamo che

• la prima sequenza u

(h)

= {u

n

}, ha il generico u

n

ottenuto applicando il metodo di Eulero esplicito partendo dal valore assunto dalla soluzione y in ogni x

n−1

,

• la seconda sequenza u

(h)

= {u

n

}, ha il generico u

n

ottenuto applicando il meto- do di Eulero esplicito partendo dal valore assunto u

n−1

, che a priori non coincide con y(x

n−1

).

Sketch della dimostrazione: Basta mostrare che

1. |e

n

| ≤ (1 + (1 + hL) + . . . + (1 + hL)

n−1

)hτ (h) + (1 + hL)

n

|e

0

|;

2. (1 + hL)

n

≤ exp(L(x

f in

− x

0

));

3. 1 + (1 + hL) + . . . + (1 + hL)

n−1

exp(L(xhLf in−x0))

. Infatti ne consegue che

|e

n

| ≤ exp(L(x

f in

− x

0

))

L τ (h) + exp(L(x

f in

− x

0

))|e

0

|.

Da y ∈ C

2

([x

0

, xfin]), posto M := max

x∈[x0,xf in]

|y

00

(x)| ∈ (0, +∞), per quanto visto sulla consistenza di Eulero Esplicito in (21)

τ (h) = max

n

n

(h)| ≤ M h/2.

Di conseguenza max

n

(|e

n

|) → 0 per h → 0, perch`e il secondo membro `e in- dipendente da n, infinitesimo per h → 0 visto che τ (h) ≤ M h

2

/2 e |e

0

| → 0 per h → 0.

Punto 1. Se f `e L-Lipschitziana (rispetto al secondo argomento) allora

|f (x, y

1

) − f (x, y

2

)| ≤ L|y

1

− y

2

|.

Mostriamo per prima cosa che da e

n

:= y(x

n

) − u

n

,

|u

n

− u

n

| ≤ (1 + hL)|e

n−1

|.

Infatti da

u

n

= y(x

n−1

) + h · f (x

n−1

, y(x

n−1

)), u

n

= u

n−1

+ h · f (x

n−1

, u

n−1

)

ricaviamo dalla L-lipschitzianit`a

(23)

|u

n

− u

n

| = |(y(x

n−1

) + h · f (x

n−1

, y(x

n−1

))) − (u

n−1

+ h · f (x

n−1

, u

n−1

))|

= |(y(x

n−1

) − u

n−1

) + h · (f (x

n−1

, y(x

n−1

)) − f (x

n−1

, u

n−1

))|

≤ |y(x

n−1

) − u

n−1

| + h|f (x

n−1

, y(x

n−1

)) − f (x

n−1

, u

n−1

))|

≤ |y(x

n−1

) − u

n−1

| + hL|y(x

n−1

) − u

n−1

|

= (1 + hL)|y(x

n−1

) − u

n−1

| = (1 + hL)|e

n−1

|. (32)

Da

• e

n

:= y(x

n

) − u

n

= (y(x

n

) − u

n

) + (u

n

− u

n

),

• |y(x

n

) − u

n

| = h|τ

n

(h)| ≤ hτ (h),

• |u

n

− u

n

| ≤ (1 + hL)|e

n−1

| si deduce

|e

n

| = |(y(x

n

)−u

n

)+(u

n

−u

n

)| ≤ |y(x

n

)−u

n

|+|u

n

−u

n

| ≤ hτ (h)+(1+hL)|e

n−1

| e quindi

|e

n

| ≤ hτ (h) + (1 + hL)|e

n−1

|

≤ hτ (h) + (1 + hL)(hτ (h) + (1 + hL)|e

n−2

|)

= (1 + (1 + hL))hτ (h) + (1 + hL)

2

|e

n−2

| ≤ . . .

≤ (1 + (1 + hL) + . . . + (1 + hL)

n−1

)hτ (h) + (1 + hL)

n

|e

0

| e cio`e

|e

n

| ≤ (1 + (1 + hL) + . . . + (1 + hL)

n−1

)hτ (h) + (1 + hL)

n

|e

0

|.

Punto 2. Notiamo che per γ > 0

1 + γ =

1

X

k=0

γ

k

k! ≤

X

k=0

γ

k

k! = exp (γ) (33)

e quindi (1 + γ)

n

≤ (exp(γ))

n

= exp(nγ) implica che per γ = hL, essendo nh = x

n

− x

0

,

(1 + hL)

n

≤ exp (nhL) = exp (L(x

n

− x

0

)) ≤ exp (L(x

f in

− x

0

)).

Punto 3. Ricordando che

1 + s + . . . + s

k

= (1 − s

k+1

)

(1 − s)

(24)

posto s = 1 + hL deduciamo che

1 + (1 + hL) + . . . + (1 + hL)

n−1

= 1 − (1 + hL)

n

1 − (1 + hL) = (1 + hL)

n

− 1

hL .

Da

• 1 + (1 + hL) + . . . + (1 + hL)

n−1

=

1−(1+hL)1−(1+hL)n

=

(1+hL)hLn−1

• (1 + hL)

n

≤ exp (L(x

f in

− x

0

)), concludiamo che

1 + (1 + hL) + . . . + (1 + hL)

n−1

= (1 + hL)

n

− 1

hL ≤ exp (L(x

f in

− x

0

)) − 1 hL

≤ exp (L(x

f in

− x

0

))

hL . (34)

Quindi, per quanto detto in precedenza, il metodo di Eulero esplicito `e convergente.

Sia h = (xfin − x

0

)/N

h

, x

n

= x

0

+ nh, n = 0, . . . , N

h

, e supponiamo che y sia la soluzione del problema di Cauchy (1) nell’intervallo [x

0

, xfin], ed f continua e L-lipschitziana rispetto la seconda variabile, con L > 0.

Consideriamo il metodo di Eulero implicito

u

n

= u

n−1

+ hf (t

n

, u

n

), u

0

= y

0

con u

n

che si desidera approssimi y

n

:= y(x

n

). Di seguito richiederemo y ∈ C

2

([x

0

, xfin]).

Dalla definizione di errore locale di troncamento, posto

¯

u

n

= y

n−1

+ hf (t

n

, y

n

) abbiamo

y

n

− ¯ u

n

= hτ

n

(h)

con τ

n

(h) = −hy

00

n

)/2, ξ

n

∈ [x

0

, xfin]. Di conseguenza, visto che il teorema di Weierstrass esiste M finito tale che M = max

x∈[x0,x

fin

]

|y

00

(x)|, necessariamente τ (h) := max

n=0,...,Nh

n

(h)| ≤ M h/2.

Per prima cosa notiamo che per la disuguaglianza triangolare, posto e

n

:= y

n

− u

n

|e

n

| = |y

n

− u

n

| = |(y

n

− u

n

) + (u

n

− u

n

)| ≤ |y

n

− u

n

| + |u

n

− u

n

|

≤ h|τ

n

(h)| + |u

n

− u

n

| ≤ hτ (h) + |u

n

− u

n

|. (35) Dalla lipschitzianit`a (rispetto la seconda variabile)

|u

n

− u

n

| = |y

n−1

+ hf (t

n

, y

n

) − u

n−1

− hf (t

n

, u

n

)|

= |y

n−1

− u

n−1

+ hf (t

n

, y

n

) − hf (t

n

, u

n

)|

≤ |y

n−1

− u

n−1

| + h|f (t

n

, y

n

) − f (t

n

, u

n

)|

≤ |y

n−1

− u

n−1

| + hL|y

n

− u

n

| = |e

n−1

| + hL|e

n

|. (36)

(25)

Quindi, per h < h

= 1/L abbiamo 0 < 1 − hL < 1 e quindi posto γ :=

1/(1−hL) > 1, da (35), portando hL|e

n

| a primo membro e dividendo ambo i membri per 1 − hL, ricaviamo con facili conti

|e

n

| ≤ hτ (h) + |e

n−1

| + hL|e

n

| ⇔ |e

n

| ≤ γhτ (h) + γ|e

n−1

|.

Di conseguenza, da |e

n

| ≤ γhτ (h) + γ|e

n−1

| si ha

|e

n

| ≤ γhτ (h) + γ|e

n−1

|

≤ γhτ (h) + γ(γhτ (h) + γ|e

n−2

|) = γhτ (h)(1 + γ) + γ

2

|e

n−2

|

≤ . . . ≤ γhτ (h)

n−1

X

k=0

γ

k

+ γ

n

|e

0

|. (37)

Osserviamo che da (1+x)

k

≤ exp(kx), γ −1 = hL/(1−hL) > 0, nh = x

n

−x

0

, γ

n

= (1 + (γ − 1))

n

≤ exp(n(γ − 1)) = exp(nhL/(1 − hL))

= exp((x

n

− x

0

)L/(1 − hL)) ≤ exp((xfin − x

0

)L/(1 − hL)), (38) per cui, visto che da 0 < γ − 1

γ

n−1

X

k=0

γ

k

= γ · γ

n

− 1

γ − 1 < γ · γ

n

γ − 1 ≤ 1

1 − hL · 1 − hL

hL · exp  (xfin − x

0

)L 1 − hL



= 1

hL · exp  (xfin − x

0

)L 1 − hL



. (39)

Quindi da

• |e

n

| ≤ γhτ (h) P

n−1

k=0

γ

k

+ γ

n

|e

0

|,

• γ P

n−1

k=0

γ

k

<

hL1

· exp



(x

fin

−x0)L

1−hL

 ,

• γ

n

≤ exp((xfin − x

0

)L/(1 − hL)), ricaviamo per n = 0, . . . , N

h

|e

n

| ≤ γhτ (h)

n−1

X

k=0

γ

k

+ γ

n

|e

0

|

< hτ (h) 1

hL · exp  (xfin − x

0

)L 1 − hL



+ exp  (xfin − x

0

)L 1 − hL



|e

0

|

≤  τ (h) L + |e

0

|



exp  (xfin − x

0

)L 1 − hL



. (40)

Visto che per h → 0, abbiamo che τ (h) → 0 e e

0

→ 0, e che l’ultimo membro di (40) non dipende da n, deduciamo per il teorema del confronto che

lim

h→0

max

n=0,...,Nh

|e

n

| = 0,

(26)

ossia il metodo di Eulero implicito `e convergente.

Se f non `e L-Lipschitziana ma `e L-dissipativa, cio`e

−L ≤ ∂f

∂y (ξ) ≤ 0, ξ ∈ Ω := (x

0

, xfin) × R abbiamo da

• u

n

= y(x

n−1

) + h · f (x

n−1

, y(x

n−1

)),

• u

n

= u

n−1

+ h · f (x

n−1

, u

n−1

),

• f (x

n−1

, u

n−1

) = f (x

n−1

, y(x

n−1

)) +

∂f∂y

(ξ)(u

n−1

− y(x

n−1

)), che per qualche ξ ∈ (x

n−1

, x

n

) × R ⊆ Ω

u

n

− u

n

= (u

n−1

+ h · f (x

n−1

, u

n−1

)) − (y(x

n−1

) + h · f (x

n−1

, y(x

n−1

)))

= (u

n−1

− y(x

n−1

)) + h · (f (x

n−1

, u

n−1

) − f (x

n−1

, y(x

n−1

)))

= (u

n−1

− y(x

n−1

)) + h ∂f

∂y (ξ)(u

n−1

− y(x

n−1

))

= (1 + h ∂f

∂y (ξ)) · (u

n−1

− y(x

n−1

)).

Da

u

n

− u

n

= (1 + h ∂f

∂y (ξ)) · (u

n−1

− y(x

n−1

)). (41) abbiamo che se 0 < h ≤ 2/L (non restrittivo per mostrare la conv. visto che si studia il comportamento per h → 0) allora da −L ≤

∂f∂y

≤ 0,

−1 = 1 − 2L/L ≤ 1 − hL≤ 1 + h ∂f

∂y (ξ) ≤ 1 e quindi |1 + h

∂f∂y

(ξ)| ≤ 1 da cui

|u

n

− u

n

| = |1 + h ∂f

∂y (ξ)| · |u

n−1

− y(x

n−1

)|

≤ |u

n−1

− y(x

n−1

)| = |e

n−1

|. (42) Da

• e

n

:= y(x

n

) − u

n

,

• |y(x

n

) − u

n

| ≤ hτ (h),

• |u

n

− u

n

| ≤ |e

n−1

|,

• |e

n

| ≤ hτ (h) + |u

n

− u

n

| ≤ hτ (h) + |e

n−1

|

(27)

ricaviamo, essendo hτ (h) > 0, e

0

= 0, n ≤ N , N h = xfin − x

0

|u

n

− u

n

| ≤ |e

n−1

| ≤ hτ (h) + |e

n−1

|

≤ hτ (h) + (hτ (h) + |e

n−2

|)

= 2hτ (h) + |e

n−2

|

≤ 2hτ (h) + (hτ (h) + |e

n−3

|)

= 3hτ (h) + |e

n−3

| ≤ . . .

≤ nhτ (h) + |e

0

| = nhτ (h)

≤ N hτ (h) = (xfin − x

0

)τ (h) ≤ (xfin − x

0

)M h

2 .

In generale un metodo LMM implicito ha propriet`a di stabilit`a migliori rispetto ad un LMM esplicito e questo ne suggerisce l’utilizzo.

Purtroppo ad ogni iterazione bisogna risolvere una equazione nonlineare.

Un approccio comunemente utilizzato `e quello del predictor-corrector. Consiste nell’utilizzare il metodo di punto fisso con una certa scelta del punto iniziale.

Nel caso di un metodo di Adams implicito (detto corrector), si utilizza ad esempio un metodo di Adams esplicito (detto predictor).

Consideriamo i seguenti metodi di Adams (porremo f

i

= f (x

i

, u

i

)).

Predictor: u

i+1

= u

i

+ h

2 (3f

i

− f

i−1

) Corrector: u

i+1

= u

i

+ h

2 (f

i+1

+ f

i

).

Posto f

i(η)

= f (x

i

, u

(η)i

) abbiamo

P: u

(0)i+1

= u

(1)i

+ h

2 (3f

i(1)

− f

i−1(1)

) E: f

i+1(0)

= f (x

i+1

, u

(0)i+1

)

C: u

(1)i+1

= u

(1)i

+ h

2 (f

i+1(0)

+ f

i(1)

) E: f

i+1(1)

= f (x

i+1

, u

(1)i+1

)

[1] K. Atkinson e W. Han, Elementary Numerical Analysis, Wiley, (2004).

[2] K.E. Atkinson, W. Han, D.E. Steward Numerical Solution of Ordinary Differential Equations, Wiley, (2009).

[3] V. Comincioli, Analisi Numerica, metodi modelli applicazioni, Mc Graw-Hill, 1990.

[4] G. Dahlquist, Convergence and stability in the numerical integration of ordinary

differential equations, Math. Scand. 4 (1956), pp.33-53.

(28)

[5] W. Gautschi, Numerical Analysis, Birkha¨user, second edition, 2012.

[6] A. Quarteroni, F. Saleri, Introduzione al Calcolo Scientifico, Springer, (2002).

[7] A. Quarteroni, R. Sacco, F. Saleri, Matematica Numerica, Springer, (1998).

[8] J. Stoer, R.Bulirsch Introduzione all’analisi numerica, Zanichelli, (1975).

[9] E. S¨uli, D. Mayers An Introduction to Numerical Analysis, Cambridge University

Press, (2003).

Riferimenti

Documenti correlati

Il raggio di curvatura di una sezione piana obliqua la cui normale formi con la normale alla superficie un angolo θ è pari al raggio di curvatura della sezione normale avente

Due classici metodi per risolvere il problema differenziale (1.2) sono il metodo di Eulero esplicito ed il metodo di Eulero implicito.. Denotiamo con I(x, x) il pi`u piccolo

Questa propriet`a suggerisce di applicare Eulero implicito invece di Eulero esplicito per risolvere numericamente un problema di Cauchy di tipo stiff.. Nel caso del metodo

se theta=0 allora si utilizza il metodo di Eulero esplicito, mentre se theta=1 Eulero implicito;.. la variabile tfin determina l’ultimo istante possibile

Steward, Numerical Solution of Ordinary Differential Equations, programs for the book , John Wiley and Sons,

2 riportiamo accanto al diagramma orario del moto naturale, il diagramma orario di un cosiddetto moto variato, cio`e il grafico di una funzione x (t) 6= x ∗ (t) avente in comune con

La durata del transitorio è legata alla costante di tempo T; nel caso di poli reali e coincidenti, il tempo di assestamento, con una buona approssimazione, è fornito dalla

Adattivit`a e propagazione degli errori per il metodo di Eu- lero esplicito.. Eulero implicito,