Sei sulla pagina 1di 18

Metodi alle differenze finite per problemi ai

limiti
Alessandra Sestini
9 ottobre 2017

1 Introduzione
In queste note si indicherà con Ω un dominio in IRd (aperto, non vuoto) che
assumeremo limitato e connesso, mentre si indicherà con ∂Ω la sua frontiera.
Un generico problema differenziale al contorno può allora essere formalmente
formulato come segue:
data la funzione f : Ω → IR, trovare u : Ω → IR tale che

Lu = f in Ω + boundary conditions su ∂Ω ,
dove L indica un operatore differenziale e le condizioni al contorno spesso
sono di Dirichlet (u assegnata su ∂Ω) o di Neumann (derivata normale di u
assegnata su ∂Ω).
I metodi numerici si pongono l’obiettivo di approssimare la soluzione u del
problema al contorno dato (che naturalmente deve essere ben posto) con una
sua approssimazione opportunamente (univocamente) definita e costruibile
con l’ausilio di un elaboratore elettronico. A questo scopo tutti utilizzano
una discretizzazione del problema differenziale che risulta definibile dopo che
è stata fissata una mesh, dove, genericamente, possiamo pensare ad una mesh
come un ricoprimento di Ω̄ (o anche di una sua porzione o estensione in certi
casi) fatto mediante politopi d–dimensionali (vedi sotto per , d = 1, 2). In
genere ad ogni mesh si associa un parametro di finezza che si indica con
h e che rappresenta il diametro massimo dei politopi che compongono la
mesh. Si noti che una condizione necessaria per l’utilizzo di un qualsiasi
metodo numerico è che esso risulti convergente, ossia che l’approssimazione

1
da esso definita, se calcolata in aritmetica esatta, tenda alla soluzione esatta
u quando h tende a zero.
Alcuni metodi numerici si pongono l’obiettivo di approssimare u solo sui
vertici della mesh mentre altri (per esempio il metodo degli elementi finiti) ne
costruiscono un’approssimazione uh in spazi funzionali a dimensione finita la
cui definizione dipende anche dalla mesh scelta. I metodi alle differenze finite
appartengono al primo gruppo e quindi costruiscono solo le approssimazioni
ui , i = 1, . . . , Nv (Nv = # vertici della mesh) di u(Vi ) (dove Vi indica l’i–esimo
vertice della mesh). Più precisamente essi definiscono il problema discreto
utilizzando delle approssimazioni mediante differenze finite delle derivate di u
che compaiono in L e eventualmente nelle condizioni al bordo. Considerando
qui solo problemi al contorno, tutti i valori ui , i = 1, . . . , Nv saranno calcolati
simultaneamente risolvendo un sistema lineare o nonlineare (a seconda se il
problema differenziale è lineare o no).

2 Problemi 1D
Quando Ω è un intervallo I limitato della retta reale parleremo di problemi
differenziali ai limiti.

2.1 Un problema ai limiti modello


In questo caso senza perdita di generalità possiamo assumere Ω = I := (0 , 1)
e si considera il seguente problema differenziale,

−u00 + σu = f in I , (1)

combinato con condizioni assegnate agli estremi, dove f e σ sono due funzioni
assegnate, con σ ≥ 0 . In particolare le condizioni agli estremi possono essere
di Dirichlet,
u(0) = g0 , u(1) = g1 , (2)
di Neumann
u0 (0) = g00 , u0 (1) = g10 . (3)
o miste,
u(0) = g0 , u0 (1) = g10 . (4)

2
Si noti che le ipotesi σ ≥ 0 e σ, f ∈ C 0 [0 , 1] , garantiscono l’unicità della
soluzione purchè si evitino le condizioni di Neumann quando σ ≡ 0 . Facen-
do esplicitamente riferimento al problema di Dirichlet, possiamo infatti far
vedere che, se z è tale che −z 00 + σz = 0 e z(0) = z(1) = 0 , allora risulta
z ≡ 0 . Questo si ottiene subito moltiplicando ambo i membri dell’equazione
differenziale per z stesso e integrando in I . Infatti, integrando per parti, si
ottiene che Z 1 Z 1
0 2
(z ) (x)dx + σ(x) z 2 (x)dx = 0 ,
0 0

la quale, anche se fosse σ ≡ 0, considerando che deve essere z(0) = z(1) = 0,


implica che z ≡ 0 . Quindi il problema omogeneo con condizioni di Dirichlet
omogenee ammette una e una sola soluzione, la soluzione nulla. Se ne può
dedurre che anche il problema (1) non omogeneo con condizioni di Dirichlet
generiche ammette una e una sola soluzione quando σ e f sono entrambe
C 0 [0 , 1] . Infatti, se u0 (x) + c1 z1 (x) + c2 z2 (x) indica l’integrale generale dell’
equazione differenziale lineare considerata (con u0 che indica una soluzione
particolare e z1 , z2 due soluzioni linearmente indipendenti dell’equazione omo-
genea), per trovare la soluzione cercata occorre determinare c1 , c2 in modo
che     
z1 (0) z2 (0) c1 g0 − u0 (0)
= .
z1 (1) z2 (1) c2 g1 − u0 (1)
Poiché in particolare la soluzione del problema omogeneo con condizioni di
Dirichlet omogenee z è la sola funzione identicamente nulla, necessariamen-
te la matrice dei coefficienti del precedente sistema lineare deve essere non
singolare. Da qui l’esistenza e unicità della soluzione.
Osserviamo poi che condizioni agli estremi non omogenee possono essere
sostituite dalle analoghe omogenee senza perdita di generalità. Infatti basta
considerare il problema differenziale verificato da û := u − Rg dove Rg è
un polinomio di grado 1 (2 per le Neumann pure) che dicesi rilevamento
dei dati sul bordo in quanto verifica le condizioni agli estremi, per esempio
Rg (x) := g0 (1 − x) + g1 x nel caso di condizioni di Dirichelet e,

−û00 + σû = (f − σRg ) in I

Per quanto riguarda la regolarità, si osservi che, se f , σ ∈ C k [0 , 1] , k ≥ 0,


allora u ∈ C k+2 ([0 , 1]) .

3
2.2 Metodo alle differenze finite
Definiamo uno schema alle differenze finite innanzi tutto fissando una mesh
su I, ossia un ricoprimento di [0 , 1] mediante i segmenti definiti da una
partizione 0 = x0 < · · · < xN = 1. Per semplicità supponiamo che tale
partizione sia uniforme, ossia xj = jh, j = 0, . . . , N, dove h = 1/N. Osser-
viamo che, supponendo che u ∈ C 4 [0 , 1], dagli sviluppi di Taylor in xj di
u(xj±1 ) = u(xj ± h) fino al terzo ordine, si ottiene che
u(xj+1 ) − 2u(xj ) + u(xj−1 ) 1 (4)
u00 (xj ) = − u (ξj )h2 ,
h2 12
dove ξj è un punto opportuno in (xj−1 , xj+1 ). Quindi, considerando il proble-
ma modello con condizoni di Dirichlet, per j = 1, . . . , N − 1, si può scrivere
che
−u(xj+1 ) + 2u(xj ) − u(xj−1 ) 1 (4)
2
+ u (ξj )h2 + σ(xj )u(xj ) = f (xj ) .
h 12
1 (4)
Se introduciamo la notazione τj = 12
u (ξj )h2 (errore di troncamento
locale) e poniamo

u = (u(x1 ) , · · · , u(xN −1 ))T ,


τ h = (τ1 , · · · , τN −1 )T ,
bh = (f (x1 ) + g0 /h2 , f (x2 ), · · · , f (xN −2 ), f (xN −1 ) + g1 /h2 )T ,
possiamo allora scrivere in forma matriciale,

Ah u = bh + τ h , (5)
dove Ah = h12 tridiag(−1, 2, −1) + diag(σ1 , · · · , σN −1 ) e σj = σ(xj ). Il metodo
alle differenze finite consiste allora nel determinare un’approssimazione uh di
u andando a risolvere il sistema lineare

Ah uh = bh . (6)

Osserviamo che uh risulta ben definito in quanto Ah è una matrice non sin-
golare, essendo sdp. Infatti la sua simmetria è evidente e si può verificare
che, ∀y ∈ IRN −1 non nullo risulta yT Ah y > 0. Infatti si ha che
N
X −1 N
X −1
T
y Ah y = σj yj2 + [y12 + 2
yN −1 + (yj − yj−1 )2 ]/h2 .
j=1 j=2

4
Risultando che τ h tende a zero quando h tende a zero, il metodo dicesi
consistente. In particolare nel nostro caso risulta τ h = O(h2 ) . Tuttavia la
consistenza non assicura da sola la convergenza del metodo. Per studiarne la
convergenza dobbiamo considerare il comportamento dell’errore eh = uh − u
quando h tende a zero. Dato che risulta Ah eh = τ h , e quindi eh = A−1 h τh ,
possiamo scrivere
keh k ≤ kA−1
h k kτ h k .

Vogliamo allora far vedere che, lavorando in norma infinito, siamo in grado di
trovare una costante che, per ogni h, maggiora kA−1 h k. A questo scopo osser-
viamo che si può dimostrare che sia Ah che la matrice A0h = h12 tridiag(−1, 2, −1)
hanno inversa non negativa (vedi Appendice C) e si ha

A−1 −1 −1 −1
0h − Ah = A0h (Ah − A0h )Ah ≥ 0 ,

per le ipotesi su σ. Questo implica naturalmente che kA−1 −1


h k∞ ≤ kA0h k∞ . Ora
−1 −1
osserviamo chekA0h k∞ = maxj (A0h e)j , dove e indica il vettore di tutti 1.
Osservando che la soluzione esatta del problema −u00 = 1, u(0) = u(1) = 0,
è il polinomio di secondo grado φ(x) = x(1 − x)/2, possiamo concludere
che (A−1 −1 −1
0h e)j = φ(xj ) e quindi che kAh k∞ ≤ kA0h k∞ ≤ max0≤x≤1 |φ(x)| .
Questo risultato di stabilità ci permette di concludere che l’errore eh ha lo
stesso ordine dell’errore di troncamento τ h e di conseguenza che il metodo è
convergente del secondo ordine.
Si noti che l’uniforme limitatezza della norma di A−1
h implica che il metodo
numerico sia stabile come vedremo nel caso generale nonlineare.

2.3 Metodo delle differenze finite per un problema ai


limiti più generale
Per problemi ai limiti più generali, se si considerano condizioni agli estremi di
Dirichlet, per quanto riguarda l’esistenza e l’unicità della soluzione si può far
ricorso al teorema sotto riportato che si riferisce alla seguente formulazione
generale di un problema ai limiti del secondo ordine (detto talvolta problema
dei due punti):  00
u = F (x, u, u0 ) , x∈I
(7)
u(0) = g0 , u(1) = g1 .

5
Teorema 1. Sia F (x, y, z) : D → IR con D := I × (−∞, +∞)2 una funzione
continua con derivate parziali Fy e Fz continue in D e tale che esistono finiti
max |Fy | e max |Fz | .
(x,y,z)∈D (x,y,z)∈D

Se risulta
Fy ≥ q > 0 ∀(x, y, z) ∈ D ,
allora il problema (7) ammette una e una sola soluzione.
Consideriamo per esempio il seguente problema lineare, detto problema di
diffusione–trasporto–reazione che per brevità nel seguito indicheremo come
problema ADR (acronimo dell’inglese Advection–Diffusion–Reaction),

−u00 + γu0 + σu = f in I , (8)


dove si assume sempre che i dati γ, σ e f siano funzioni continue in [0 , 1] e
dove al solito chiediamo σ ≥ 0 in [0 , 1]. Riscritto come in (7), si ha che
F (x, y, z) = σ(x)y + γ(x)z − f (x) .
Se quindi l’equazione differenziale è combinata con condizioni ai limiti di
Dirichlet e si assume σ > 0 in [0 , 1] , siamo nelle ipotesi del precedente
teorema e quindi è garantita l’esistenza e unicità della soluzione (soluzione
forte). Vedremo più avanti che, passando alla formulazione debole del proble-
ma differenziale, sarà possibile tornare solo a chiedere σ ≥ 0 per dimostrare
l’esistenza e unicità della soluzione in senso debole. Osserviamo inoltre che
se γ è una costante, procedendo come fatto per il problema modello, si può
dimostrare l’esistenza e unicità della soluzione forte anche se si assume solo
σ ≥ 0.
Vediamo quindi come si può risolvere il problema ADR numericamente,
avvalendoci del metodo delle differenze finite. Approssimando la derivata
prima in xj col la differenza finita centrata (molecola a tre punti), se u si
suppone di classe C 3 si ha che
u(xj+1 ) − u(xj−1 ) 1
u0 (xj ) = + u(3) (ηj )h2 .
2h 6
Di conseguenza si ottiene che vale sempre il sistema in (5), dove ora Ah è
sempre tridiagonale ma tale che, ∀1 ≤ i ≤ N − 1 risulta
1 hγi 1 1 hγi
Ah (i, i−1) = − 2
(1+ ) , Ah (i, i) = 2 (2+h2 σi ) , Ah (i, i+1) = − 2 (1− ),
h 2 h h 2
6
e si ha,
 T
1 hγ1 1 hγN −1
bh = f1 + 2 (1 + )g0 , f2 , · · · , fN −2 , fN −1 + 2 (1 − )g1 .
h 2 h 2
Per quanto riguarda l’errore di troncamento locale si ha che ora
1 (4) 1
τj = u (ξj )h2 + γj u(3) (ηj )h2
12 6
che quindi implica che τ h è sempre del secondo ordine.
Al solito uh sarà determinata andando a risolvere (6).
Teorema 2. Se σ, γ, f ∈ C 0 [0 , 1], con σ ≥ σmin > 0 , allora ∀h > 0la
matrice tridiagonale Ah risulta a predominanza diagonale in senso forte (e
quindi nonsingolare) purché risulti
hγmax (h)
≤ 1, (9)
2
dove γmax (h) := max |γi | .
i=1,...,N −1

Dimostrazione : Osserviamo che nell’ipotesi fatta risulta 1− 21 hγmax (h) ≥ 0


e quindi risulta anche che ∀j si ha 1 ± 12 hγj ≥ 0. Ne consegue che tutti gli
elementi extradiagonali di Ah sono non positivi e su tutte le righe interne
la somma dei loro valori assoluti è pari a h22 e quindi strettamente minore
del corrispondente elemento diagonale, essendo per ipotesi σ ≥ σmin > 0.
Questo a maggior ragione sarà vero sulla prima e ultima riga. Quindi Ah è a
predominanza diagonale in senso forte.
Il seguente teorema ci assicura la stabilità del metodo e quindi la sua
convergenza del secondo ordine se la soluzione u è di classe C 4 .
Teorema 3. Se σ, γ e f sono continue in [0 , 1] e risulta
• σ ≥ σmin > 0 ,

• vale la disuguaglianza in (9)


si ha anche che
1
max |uh (j) − u(xj )| ≤ kτ h k∞ .
1≤j≤N −1 σmin

7
Dimostrazione : Poniamo ej := uh (j) − u(xj ) e supponiamo che sia |ek | ≥
|ej |, j = 1, . . . , N − 1. Supponiamo inoltre che sia 1 < k < N − 1 (altrimenti
si può adattare il ragionamento). Poiché risulta che Ah eh = τ h , tenendo
presente i segni degli elementi non nulli di Ah , si ha che
(2 + σk h2 )|ek | ≤ (1 + 21 hγk ) |ek−1 | + (1 − 21 hγk )| |ek+1 | + h2 |τk |
≤ 2|ek | + h2 |τk |

Questo quindi implica che

σk h2 |ek | ≤ h2 |τk |

e quindi la tesi.

Osservazione 1. Dal precedente teorema possiamo dedurre che il metodo


delle differenze finite (con derivata prima approssimata con formula alle dif-
ferenze finite centrate) risulta solo condizionatamente stabile per il problema
ADR.
Osserviamo che, nell’ipotesi γ ≥ 0 in I , il vincolo di stabilità può essere ri-
mosso se nel metodo alle differenze finite si utilizza un rapporto incrementale
all’indietro (schema upwind) invece che centrato per approssimare la derivata
prima, al prezzo di avere un errore locale di troncamento τ h dell’ordine di h
invece che di h2 . In tal caso la matrice Ah risulta essere
1 1 1
Ah (i, i−1) = − 2
(1+hγi ) , Ah (i, i) = 2 (2+hγi +h2 σi ) , Ah (i, i+1) = − 2 ,
h h h
che è a diagonale dominante in senso forte. Il fatto che in questo caso il
metodo risulti incondizionatamente stabile possiamo dimostrarlo osservando
che si può scrivere
ui − ui−1 ui+1 − ui−1 −ui−1 + 2ui − ui+1
= + µh ,
h 2h h2
con
h
µh :=, viscosità artificiale .
2
Allora la i–esima istanza dell’equazione alle differenze si può riscrivere come
segue,
−ui−1 + 2ui − ui+1 ui+1 − ui−1
(1 + γi µh ) 2
+ γi + σ i ui = fi .
h 2h
8
Posto
γ̂i := γi /(1 + γi µh ) , σ̂i := σi /(1 + γi µh ) , fˆi := fi /(1 + γi µh )
dal teorema precedentemente dimostrato si ha che la condizione di stabilità è
hγ̂max (h) ≤ 2 , dove γ̂max (h) = max γ̂i . Ricordando che µh = h/2 , si verifica
che tale condizione è verificata per ogni passo h.

2.4 Il problema di diffusione–trasporto a coefficienti


costanti
Consideriamo il seguente problema di diffusione–trasporto a coefficienti co-
stanti:
−µu00 + γu0 = 0 , x∈I, u(0) = 0 , u(1) = 1 ,
con µ e γ costanti positive rispettivamente chiamate coefficiente di viscosità
e di trasporto. Si osservi che in questo caso è possibile calcolare facilmente
la soluzione esatta del problema considerato. Infatti si ha che l’integrale
generale dell’equazione differenziale lineare omogenea a coefficienti costanti
di ordine 2 considerata risulta essere c1 +c2 exp( µγ x) e quindi la soluzione u(x)
si trova determinando le costanti c1 e c2 in modo che valgano le condizioni
ai limiti, ottenendo nel nostro caso la seguente finzione crescente di tipo
esponenziale,
γ γ
u(x) = (exp( x) − 1)/(exp( ) − 1) .
µ µ
γ
Se µ è molto grande tale soluzione presenta un boundary layer di ampiezza
O( µγ ) in corrispondenza di x = 1 e in tale regione la derivata assume valori
prossimi a µγ . Se si usa il metodo DFC (differenze finite centrate) per appros-
simare la soluzione di questo problema si ottiene la seguente equazione alle
differenze lineare:
hγ hγ
−(µ + )ui−1 + 2µui − (µ − )ui+1 = 0 , i = 1, . . . , N − 1.
2 2
Dividendo per µ, posto

P e := , numero di Peclet locale (10)

si può più brevemente riscrivere
−(1 + P e)ui−1 + 2ui − (1 − P e)ui+1 = 0 , i = 1, . . . , N − 1.

9
In questo caso siamo quindi in grado di scrivere a priori l’espressione ana-
litica della soluzione del problema discreto. Infatti la soluzione generale
dell’equazione alle differenze considerata è la seguente,

ui = a1 λi1 + a2 λi2 ,

dove λ1 e λ2 sono le radici del polinomio (P e − 1)λ2 + 2λ − (P e + 1) e quindi


p
−1 ± 1 + (P e2 − 1)
λ1,2 =
Pe − 1
e quindi λ1 = 1 , λ2 = 1+P e
1−P e
. La soluzione del nostro problema discreto
si trova determinando a1 e a2 in modo che valgano lo condizioni al limiti
assegnate, ottenendo le equazioni

a1 + a2 = 0 , a 1 + a2 λ N
2 = 1

e quindi ponendo −a1 = a2 = 1/(λN


2 − 1). In definitiva si ha

λi2 − 1
ui = , i = 0, . . . , N .
λN
2 −1

La soluzione discreta trovata è crescente in i solo se P e < 1 in quanto solo


sotto questa condizione risulta λ2 > 1. Se invece si ha P e > 1 risulta λ2 < −1
e quindi la soluzione discreta presenterà delle oscillazioni intorno allo zero
tanto più marcate quanto più ci si avvicina al boundary layer. Osserviamo
che la condizione P e < 1 , è proprio una istanza della condizione di stabilità
introdotta per il problema ADR generale. Notiamo infine che comunque la
convergenza per h → 0 è assicurata (tenendo presente che N = 1/h e come è
γ
definito P e, verificare che limh→0 λN
2 = exp( µ )). Tuttavia l’andamento della
soluzione numerica non è affatto conforme a quello della soluzione continua
se P e > 1.

2.5 Metodo delle differenze finite per problemi ai limiti


non lineari
Per il problema (7) il metodo DFC porta alla risoluzione di un sistema non
lineare di N − 1 equazioni in altrettante incognite la cui i–esima equazione è
−ui−1 + 2ui − ui+1 ui+1 − ui−1
2
+ F (xi , ui , ) = 0.
h 2h
10
Per comodità di notazione, definiamo l’operatore alle differenze Lh che agisce
N −1
sulla sequenza W = {wi }i=1 associandogli un’altra sequenza della stessa
lunghezza e in particolare ponendo
−wi−1 + 2wi − wi+1 wi+1 − wi−1
(Lh W)i := 2
+ F (xi , wi , ),
h 2h
dove si assume che w0 = g0 e wN = g1 . Questo ci permette di scrivere
compattamente lo schema numerico come segue:

(Lh uh )i = 0 , i = 1, . . . , N − 1 , u0 = g0 , uN = g1 ,

o anche con un formalismo diverso che ci farà comodo avanti come un sistema
nonlineare
Φ((g0 , uTh , g1 )) = 0 , (11)
dove Φ : IRN +1 → IRN +1 , e dove, se y = (y0 , . . . , yN )T , si ha

 Φ0 (y) := y0 − g0 ,
Φi (y) := −yi−1 +2y
h2
i −yi+1 −yi−1
+ F (xi , yi , yi+12h ) , i = 1, . . . , N − 1 , (12)
ΦN (y) := yN − g0 ,

Verifichiamo innanzi tutto che il metodo risulta ancora consistente del


secondo ordine ossia che tale è l’ordine di τ h . A tale scopo osserviamo che
l’errore locale di troncamento τi è ora (Lh u)i (quantità a meno della quale
la soluzione esatta verifica l’equazione alle differenze) , dove
−u(xi−1 )+2u(xi )−u(xi+1 )
(Lh u)i = h2
+ F (xi , u(xi ) , u(xi+1 )−u(x
2h
i−1 )
) =
−u00 (xi ) − 12 u (ξi )h2 + F (xi , u(xi ) , u0 (xi ))−
1 (4)

F (xi , u(xi ) , u0 (xi )) + F (xi , u(xi ) , u0 (xi ) − 16 u(3) (ηi )h2 ) =


1 (4)
− 12 u (ξi )h2 − Fz (xi , u(xi ) , ζi ) 16 u(3) (ηi )h2 ,

dove ζi è un punto opportuno compreso fra u0 (xi ) e u0 (xi ) − 16 u(3) (ηi )h2 .


Naturalmente è prioritario essere certi che anche nel caso nonlineare, se il pro-
blema continuo ammette una e una sola soluzione, anche il corrispondente
problema discreto ne ammette una e una sola (cosa che nel caso lineare cor-
rispondeva a controllare la nonsingolarità della matrice Ah ). A tale riguardo
ci viene in aiuto il seguente teorema,

11
Teorema 4. Se siamo nelle ipotesi del Teorema 1, posto L ≥ |Fz (x, y, z)|, e
0 < q ≤ Fy (x, y, z) ≤ Q in D , se

hL
≤ 1,
2
il sistema nonlineare in (11) definito dallo schema DFC ammette una e una
sola soluzione.

Dimostrazione : Osserviamo che il punto ŷ = (y0 , . . . , yN )T := (g0 , uTh , g1 )T


è soluzione di (11) sse esso è punto fisso della funzione Gω : IRN +1 → IRN +1
con,

G(y) := (g0 , G1 (y), . . . , GN −1 (y), g1 )T ,


h2
Gi (y) := yi − 2(1+ω) (Lh y)i , i = 1, . . . , N − 1 , ∀ω > 0.

Vogliamo allora far vedere che, se


1
ω ≥ h2 Q (13)
2
nelle ipotesi del teorema, Gω è una contrazione in IRN +1 . Infatti, dalla teoria
dei sistemi nonlineari (vedi Teorema 6 in Appendice C), questo ci assicura
che Gω ammette uno e un solo punto fisso in IRN +1 . Dobbiamo quindi far
vedere che esiste una costante 0 ≤ K < 1 tale che per ogni V, W ∈ IRN +1
risulta
kGω (V) − Gω (W)k∞ ≤ K kV − Wk∞ ,
ossia
|Gi (V) − Gi (W)| ≤ K kV − Wk∞ , i = 1, . . . , N − 1.
Ora per definizione si ha che
h2 −(vi−1 −wi−1 )+2(vi −wi )−(vi+1 −wi+1 )
Gi (V) − Gi (W) = (vi − wi ) − 2(1+ω)
{ h2
+
.
−vi−1 −wi−1
F (xi , vi , vi+12h ) − F (xi , wi , wi+12h )

D’altra parte, al solito, si può scrivere


−vi−1 −wi−1
F (xi , vi , vi+12h ) − F (xi , wi , wi+12h )=
(vi+1 −wi+1 )−(vi−1 −wi−1 )
Fy (xi , ξi , ηi )(vi − wi ) + Fz (xi , ξi , ηi ), 2h

12
e quindi si ottiene

ai (vi−1 − wi−1 ) + bi (vi − wi ) + ci (vi+1 − wi+1 )


Gi (V) − Gi (W) = ,
1+ω
con
ai := 21 [1 + h2 Fz (xi , ξi , ηi )] ,
2 h2
bi := (1 + ω) − (1 + h2 Fy (xi , ξi , ηi )) = ω − 2 y
F (xi , ξi , ηi ) ,
ci := 12 [1 − h2 Fz (xi , ξi , ηi )] .

Ora, essendo hL/2 ≤ 1 , i coefficienti ai e ci sono nonnegativi. Per l’ipotesi


(13) su ω si ha anche che anche bi è nonnegativo. Quindi si può scrivere

h2
 
ai + b i + c i
|Gi (V)−Gi (W)| ≤ kV−Wk∞ = 1 − Fy (xi , ξi , ηi ) kV−Wk∞ .
1+ω 2(1 + ω)

Maggiorando ancora si ha

|Gi (V) − Gi (W)| ≤ KkV − Wk∞ ,

con K costante definita come segue,

h2 q
K := 1 − < 1.
2(1 + ω)

In effetti potremmo allora anche pensare di approssimare ŷ mediante il me-


todo delle iterate successive che, scelto y(0) ∈ IRN +1 (in questo caso arbitra-
riamente), pone
y(k+1) = Gω (y(k) ) , k = 0, 1, . . .
in quanto sempre dalla teoria dei sistemi nonlineari si sa che tale successione
risulta convergente essendo Gω una contrazione in IRN +1 . Tuttavia la conver-
genza risulta solo lineare e tanto più lenta quanto più K si avvicina a 1. Per
questo motivo preferiremo utilizzare il metodo di Newton che pone,

y(k+1) = y(k) + d(k) , con JΦ (y(k) ) d(k) = −Φ(y(k) ) ,

dove JΦ (y) indica la matrice jacobiana di Φ . Osserviamo che da (12) discende


che tale matrice ha la prima riga e l’ultima uguali a quelle della matrice

13
identità ed è tridiagonale in quanto Φi dipende solo da yi−1 , yi e yi+1 . Più
precisamente si ha che
−yi−1
JΦ (y)(i, i − 1) = − h12 − 2h
1
Fz (xi , yi , yi+12h ),
2 yi+1 −yi−1
JΦ (y)(i, i) = h2
+ Fy (xi , yi , 2h
),
−yi−1
JΦ (y)(i, i + 1) = − h12 + 2h
1
Fz (xi , yi , yi+12h ).

Per quanto riguarda la stabilità, possiamo dare la seguente definizione


generale.

Definizione 1. Lo schema DFR nonlineare è stabile se esiste una costante


M > 0 tale che, per ogni coppia di sequenze V = {vi }N N
i=0 e W = {wi }i=0 ,
risulti

max |vi −wi | ≤ M max{||v0 −w0 | , |vN −wN | , max |(Lh V)i −(Lh W)i |} .
i=1,...,N −1 i=1,...,N −1

Si noti che la stabilità è una proprietà intrinseca del metodo numerico e


garantisce che al più se ũh = {ũi }N
i=0 è la soluzione di un problema perturbato,

(Lh ũh )i = i , i = 1, . . . , N − 1 , ũ0 = g0 + 0 , ũN = g1 + N ,

risulta
max |ũi − ui | ≤ M max |i | .
i=0,...,N i=0,...,N

Dato che in aritmetica finita la soluzione che si trova non è mai esattamente
uh bensı̀ ũh , se M non è troppo grande, ci si aspetta che l’accuratezza con
cui ũh approssima uh sia dell’ordine del corrispondente residuo relativo, ossia
di maxi=0,...,N |i |. Osserviamo che se il problema è lineare e la matrice Ah di
DFC risulta invertibile con inversa limitata uniformemente rispetto ad h, si ha
stabilità (secondo la definizione formale data sopra) con M = kA−1 h k∞ . Per il
caso nonlineare vale il seguente teorema del quale si riporta solo l’enunciato.

Teorema 5. Se siamo nelle ipotesi del Teorema 1, posto L ≥ |Fz (x, y, z)| e
0 < q ≤ Fy (x, y, z) , (x, y, z) ∈ D , allora se

hL
≤ 1,
2
lo schema DFC applicato al problema nonlineare (7) è (condizionatamente)
stabile con M := max{1 , 1/q}.

14
Notiamo che un’ulteriore importante conseguenza della stabilità è la con-
vergenza dello schema DFC. Infatti si ha che per la stabilità risulta

ku − uh k∞ ≤ M kτ h k∞

e quindi se kτ h k∞ → 0 , anche l’errore tenderà a zero per h che tende a zero.

15
3 Appendice
Definizione 2. Una matrice quadrata A dicesi convergente se

lim Ak = 0 .
k→+∞

Si può dimostrare che A è convergente se e solo se il suo raggio spettrale


ρ(A) è minore strettamente di 1 ,

A convergente ⇔ ρ(A) < 1.

Dimostrazione : Dimostrare che se A è convergente allora il suo raggio


spettrale è minore di uno è facile: infatti in questa ipotesi risulta che, se
A ∈ IRN ×N , ∀v ∈ IRN risulta Ak v → 0 . Se quindi λ ∈ C è un qualsiasi
autovalore di A e v un autovettore ad esso relativo, si ottiene che

Ak v = λk v → 0 ⇒ λk → 0 ⇒ |λ| < 1 .

Per l’ arbitrarietà di λ nello spettro di A si ottiene quindi che ρ(A) < 1. Il


viceversa è pure semplice da dimostrare se A è diagonalizzabile. Infatti in tal
caso si sa che esistono due matrici N × N, D diagonale e S invertibile, tali
che A = S −1 DS . Questo implica che Ak = S −1 Dk S . Dato che gli elementi
sulla diagonale di D sono proprio gli autovalori di A, essendo ρ(A) < 1 per
ipotesi, si ha che Dk → 0 e quindi anche Ak → 0. Se la matrice A non è
diagonalizzabile occorre considerarne la fattorizzazione in forma canonica di
Jordan per dimostrare la sufficienza.
Circa il raggio spettrale di matrici non negative ci è utile il seguente lemma:

Lemma 1. Se A ≥ B ≥ 0 , allora ρ(A) ≥ ρ(B).

Dimostrazione : Sia  > 0 e consideriamo la matrice A/(ρ(A) + ) che ha


raggio spettrale minore di 1 e quindi è convergente. Ma si ha che allora anche
B/(ρ(A) + ) risulta convergente, essendo
 k  k
B A
0≤ ≤ .
ρ(A) +  ρ(A) + 

Quindi, per quanto detto sopra, deve essere ρ(B) < ρ(A) + . Passando allora
al limite per  che tende a 0 si ottiene la tesi.

16
Definizione 3. Una matrice quadrata A è una M –matrice se si può scrivere
A = α(I − B) , con α > 0 , B ≥ 0 , e ρ(B) < 1 . (14)
Proposizione 1. Se A è una M-matrice, allora essa è invertibile e si ha
A−1 ≥ 0.
Dimostrazione : Scritta A come in (14), essendo ρ(B) < 1, la matrice I −B
non può essere singolare, altrimenti B ammetterebbe l’autovalore 1. Inoltre,
considerando che B è convergente, si ha che
k
X
(I − B) B i = I − B k+1 → I .
i=0

+∞
X
Questo implica che (I − B) −1
= B i . Essendo B ≥ 0, questo a sua volta
i=0
implica che (I − B)−1 ≥ 0.

Esempio 1. La matrice A = tridiag(−1 , 2 , −1) è una M –matrice. Infatti si


può scrivere A = 2(I − B) con B = 12 tridiag(1, 0, 1) ≥ 0 e si dimostra che, se
N è la dimensione di B, i suoi autovalori sono λk = cos Nkπ +1
, k = 1, . . . , N.
Si noti che, se A è una M –matrice e C = A + D con D diagonale nonne-
gativa, allora (A + D)−1 ≥ 0. Infatti, se la A si scrive come in (14), si può
anche scrivere
A + D = α(I + D̂ − B) = α(I + D̂)[I − (I + D̂)−1 B] ,
dove D̂ = α1 D ≥ 0. Osserviamo inoltre che valgono le seguenti
 disuguaglianze:

0 ≤ (I + D̂)−1 B ≤ B . Per il Lemma 1 si ha quindi che ρ (I + D̂)−1 B ≤
ρ(B) < 1. Quindi la matrice fra parentesi quadre è una M –matrice, il che
implica l’asserto. Quindi, considerando l’esempio sopra e quanto appena
detto, si può per esempio concludere che anche la matrice Ah introdotta in
(5) ha inversa nonnegativa.

Nel caso del problema ai limiti non lineare dei due punti, abbiamo dimo-
strato sotto opportune ipotesi l’esistenza e unicità della soluzione discreta
generata dal metodo DFC considerandone la soluzione come il punto fisso di
un’opportuna contrazione. A tale scopo ci siamo basati sul seguente teorema
di mapping contrattivo,

17
Teorema 6. Sia D ⊆ IRd o tutto IRd o un suo sottoinsieme chiuso e limitato.
Se φ : D → D e φ è in D una contrazione (ossia esiste una costante γ
positiva e minore di 1 tale chekφ(x) − φ(y)k ≤ γkx − yk , ∀x, y ∈ D), allora
qualunque sia x0 ∈ D la successione xn = φ(xn−1 ), n = 1, . . . risulta ben
definita e convergente all’unico punto fisso di φ in D.

Dimostrazione : Osserviamo che dalla contrattività discende facilmente che


kxn+1 − xn k ≤ γ n kx1 − x0 k e di conseguenza
p p ∞
X X X
n+k−1 n
kxn+p −xn k ≤ kxn+k −xn+k−1 k ≤ γ kx1 −x0 k ≤ γ γ k−1 kx1 −x0 k ,
k=1 k=1 k=1

ossia
γn
kxn+p − xn k ≤ kx1 − x0 k .
1−γ
La successione è quindi di Cauchy e quindi, essendo D completo, essa è
convergente a un certo α ∈ D. Essendo kxn − φ(α)k = kφ(xn−1 ) − φ(α)k <
γkxn−1 − αk → 0 , deve essere xn → φ(α) e quindi per l’unicità del limite
deve essere α = φ(α) (punti fisso). La contrattività implica subito che non
possono esistere altri punti fissi in D.

Riferimenti bibliografici
[1] V. Comincioli (1990), Analisi Numerica, Metodi, Modelli e Aplicazioni,
Mc Graw Hill, Milano.

[2] W. Gautcshi (2012), Numerical Analysis, Second Edition, Birkäuser,


New York.

18

Potrebbero piacerti anche