Professional Documents
Culture Documents
Claudio Canuto
Dipartimento di Scienze Matematiche
Politecnico di Torino
10129 Torino Italy
claudio.canuto@polito.it
http://calvino.polito.it/ccanuto
2 marzo 2014
2
Capitolo 1
Nel seguito indichiamo con x = (x1 , x2 , x3 ) R3 il generico punto dello spazio, e con e1 =
(1, 0, 0), e2 = (0, 1, 0), e3 = (0, 0, 1) i vettori della base canonica in R3 . Talvolta porremo per
semplicita x = (x, y, z).
x3
x2
0
V0
0,x1
0,x1+x
L
x1
3
4 CAPITOLO 1. IL MODELLO DEL FILO ELASTICO
il tensore degli sforzi del filo. Sia poi n la normale alla sezione trasformata del filo, orientata
nel senso crescente delle x1 . Lequazione di equilibrio e
Z Z Z
f dV + n d n d = 0 . (1.2)
V x1 +x x 1
avendo indicato con |S| larea della sezione S e con f (x) il valor medio di f sulla sezione S nel
punto x (0, L): Z
1
f (x1 ) = f (x1 , x2 , x3 ) dx2 dx3 .
|S| S
Procedendo in modo simile con gli integrali di superficie arriviamo alle equazioni approssimate
Z x1 +x
|S| f (x) dx + |S| n|x1 +x |S| n|x1 = 0 . (1.3)
x1
Dividiamo per |S| e, per non appesantire le notazioni, cancelliamo il simbolo ; inoltre notiamo
che, per le ipotesi fatte, n e1 . Otteniamo quindi
Z x1 +x
f (x) dx + e1 |x1 +x e1 |x1 = 0 . (1.4)
x1
Prendiamo ora la componente di tale equazione lungo lasse x3 , ossia formiamone il prodotto
scalare con e3 , ottenendo
Z x1 +x
f3 (x) dx + 31|x1 +x 31|x1 = 0 . (1.5)
x1
d31
f3 (x1 ) + (x1 ) = 0 , x1 (0, L) , (1.6)
dx
che esprime la condizione di equilibrio del filo.
Invochiamo ora la legge costitutiva di Hooke, che lega il tensore degli sforzi al tensore delle
deformazioni :
= 2 + tr()I , (1.7)
1.1. DERIVAZIONE DEL MODELLO NEL CASO STATICO 5
x3
u(x)
x1
0 x L
dove > 0, > 0 sono i coefficienti di Lame del materiale elastico, e il tensore delle
deformazioni
1 ui uj
= (ij )1i,j3 , ij = + , (1.8)
2 xj xi
tr() = 11 + 22 + 33 = u e la traccia del tensore delle deformazioni e I = (ij )1i,j3
e il tensore identita. Prendendo la componente 3, 1 dellequazione (1.7) e ricordando che u1 e
trascurabile rispetto a u3 , otteniamo lequazione costitutiva approssimata
u3
31 = . (1.9)
x1
Infine, per semplicita omettiamo i pedici alle quantita u3 , 31 e f3 introdotte finora. Il coefficiente
, detto modulo di taglio, puo essere espresso in funzione del modulo di Young E e del coefficiente
di Poisson come
E
= . (1.10)
2(1 + )
ove lultima relazione esprime il fatto che il filo e fissato alle estremita dellintervallo [0, L].
Sostituendo lespressione di nella prima equazione otteniamo
d du = f in (0, L) ,
dx dx (1.12)
u(0) = u(L) = 0 .
una e una sola soluzione (vedi Figura 1.2), se ad esempio ed f sono funzioni continue (o
continue a tratti) in [0, L].
E facile esprimere u in funzione di f mediante quadrature. Infatti, integrando la prima delle
(1.11) abbiamo Z x
(x) = C1 f (s) ds (1.13)
0
mentre integrando la seconda delle (1.11) otteniamo
Z x
(s)
u(x) = C2 + ds ; (1.14)
0 (s)
0 = x0 < x1 < . . . < xj1 < xj < xj+1 < . . . < xN < xN +1 = L . (1.15)
1. lapprossimazione delle derivate che compaiono nelle equazioni, mediante formule di de-
rivazione numerica (quali ad esempio rapporti incrementali) che fanno intervenire nodi
contigui della griglia;
Per quanto riguarda il passo 1., ricordiamo le principali formule di derivazione numerica rias-
sunte nel Paragrafo 7.3, e la loro precisione (dipendenza dellerrore dal passo di discretizzazione).
Una scelta semplice e naturale appare quella di approssimare ogni derivata prima che compare
nelle (1.11) mediante un rapporto incrementale centrato, basato su due punti simmetricamente
disposti rispetto al punto in cui si vuole approssimare la derivata; tale approssimazione risulta
piu precisa di quella fornita da un rapporto incrementale in avanti o allindietro, sempre su
1.2. DISCRETIZZAZIONE MEDIANTE DIFFERENZE FINITE 7
due punti. Per realizzare i rapporti incrementali centrati, e conveniente (si veda la successiva
Osservazione 1.2.1) arricchire la griglia computazionale introducendo i nodi a indici semi-interi
xj+1/2 = h(j +1/2), con j = 0, . . . , N , situati a mezza strada tra due nodi contigui a indici interi.
Ad essi associamo valori approssimati j+1/2 (xj+1/2 ) dello sforzo di taglio. Introduciamo
allora le seguenti approssimazioni delle derivate prime di e di u:
d j+1/2 j1/2 du uj+1 uj
(xj ) e (xj+1/2 ) . (1.16)
dx h dx h
Il passo 2. sopra citato e realizzato imponendo lequazione approssimata di equilibrio nei nodi
a indici interi:
j+1/2 j1/2
+ fj = 0 , j = 1, . . . , N , (1.17)
h
e la legge costitutiva nei nodi a indici semi-interi:
uj+1 uj
j+1/2 = j+1/2 , j = 0, . . . , N , (1.18)
h
avendo posto fj = f (xj ) e j+1/2 = (xj+1/2 ) (supponiamo in questo Paragrafo che f e siano
funzioni continue su [0, L]).
Facendo uso della (1.18) nella (1.17), otteniamo le relazioni
1 uj+1 uj uj uj1
j+1/2 j1/2 = fj , j = 1, . . . , N , (1.19)
h h h
che possiamo ancora scrivere come
1
2
j1/2 uj1 + (j1/2 + j+1/2 )uj j+1/2 uj+1 = fj , j = 1, . . . , N , (1.20)
h
Siamo quindi giunti a un sistema di N equazioni lineari nelle N incognite uj . Esso puo essere
scritto nella forma matriciale
Au = f , (1.21)
avendo definito i vettori colonna di RN
u1 f1
u2 f2
u = ... , f = ..
. , (1.22)
uN 1 fN 1
uN fN
Si noti che la matrice e tridiagonale, vale a dire gli elementi diversi da 0 si trovano solo sulla
diagonale principale e sulla prima sopra- e sotto-diagonale (si veda la Fig. 1.3). Questo e un caso
particolare di matrice a banda, ossia di matrice i cui elementi diversi da 0 sono contenuti in una
8 CAPITOLO 1. IL MODELLO DEL FILO ELASTICO
10
15
20
25
30
0 5 10 15 20 25 30
nz=94
Figura 1.3: Posizione degli elementi non nulli della matrice A per N = 32. Se il coefficiente e
costante, gli elementi indicati con valgono 2/h2 , quelli indicati con o valgono /h2
Osservazione 1.2.1 Ritorniamo sulle formule di derivazione (1.16) per notare che se avessimo
usato soltanto nodi a indici interi per definire i rapporti incrementali, saremmo giunti a rela-
zioni analoghe alle (1.20) ma facenti intervenire le incognite uj2 , uj e uj+2 , con un innaturale
disaccoppiamento tra incognite a indici pari e incognite a indici dispari.
Notazione E conveniente introdurre una notazione specifica per indicare le matrici tridiagonali
che hanno gli elementi uguali su ciascuna diagonale (salvo eventualmente quelli nella prima e/o
1.2. DISCRETIZZAZIONE MEDIANTE DIFFERENZE FINITE 9
una matrice tridiagonale avente i valori costanti a, b, c rispettivamente sulla prima sotto-
diagonale, sulla diagonale principale, sulla prima sopra-diagonale. Qualora gli elementi nella
prima e ultima riga siano diversi, porremo
b c
a b c
a b c
tridiag [b c ; a b c; a b ] = . (1.27)
a b c
a b c
a b
j = 2, . . . , N 1 ,
N 1/2 + N +1/2 N 1/2 N +1/2 2N 1/2 + N +1/2
CN = x R : x
h2 h2 =
h2
,
h2
.
Dunque tutti gli autovalori di A sono strettamente positivi: infatti, ogni intervallo di Gerschgorin
e contenuto nella semiretta positiva delle ascisse ed inoltre lorigine non appartiene a tutti gli
intervalli di Gerschgorin; pertanto 0 non puo essere autovalore della matrice. Concludiamo che
A e una matrice simmetrica e definita positiva.
10 CAPITOLO 1. IL MODELLO DEL FILO ELASTICO
Uno studio piu approfondito permette di stimare lordine di grandezza degli autovalori minimo
e massimo, e quindi il numero di condizionamento della matrice nella norma euclidea, in funzione
del parametro di discretizzazione h. Supponiamo che il coefficiente elastico sia costante, di
modo che gli elementi di A siano dati da (1.25). Indicando con h gli autovalori della matrice
A, notiamo che il problema algebrico agli autovalori
Aw = h w (1.28)
puo essere visto come frutto della discretizzazione del problema differenziale agli autovalori
2
d w = w in (0, L) ,
dx2 (1.29)
w(0) = w(L) = 0 .
Tale problema descrive lAnalisi modale di un filo elastico avente densita di massa unitaria (si
veda per maggiori dettagli il Paragrafo 4.2). La prima delle (1.29) e unequazione differenziale
del secondo ordine lineare a coefficienti costanti, il cui integrale generale e dato da
s ! s !
w(x) = C1 sin x + C2 cos x ;
2 2
p = p , wp (x) = C sin p x , p = 1, 2, . . . , (1.30)
L2 L
con C costante arbitraria 6= 0. Notiamo che gli autovalori sono tutti strettamente positivi e
formano una successione strettamente crescente e tendente a +.
0 L
Figura 1.4: Autofunzione w3 del problema (1.29) (tratto continuo) e componenti del
corrispondente autovettore w3 del problema (1.28) per N = 32 (rombi)
1.3. STABILITA, CONSISTENZA, CONVERGENZA 11
(si veda la Fig. 1.4 per un esempio). Verifichiamo tale proprieta, e in tal modo calcoliamo gli
autovalori discreti h,p . Ponendo per semplicita C = 1, abbiamo per ogni j = 1, . . . , N
(Awp )j = 2
wp (xj1 ) + 2wp (xj ) wp (xj+1 )
h
h h h
= sin p (j 1) + 2 sin p j sin p (j + 1) .
h2 L L L
Osserviamo che 0 < N p+1 < per 1 p N e che cos t e una funzione strettamente decrescente
nellintervallo [0, ]; pertanto gli autovalori discreti sono tutti strettamente positivi (come gia
sapevamo dal teorema di Gerschgorin) e formano una successione strettamente crescente con p.
Ricordando che 1cos t 12 t2 per t 0 e che cos t 1 per t , otteniamo il comportamento
asintotico dellautovalore minimo h,1 e massimo h,N al tendere di h a 0 (o, equivalentemente,
al tendere di N a +):
2 1 h 2 2 4
h,1 2 = 2 = 1 , h,N 2 . (1.33)
h 2 L L h
Se ne deduce in particolare che il numero di condizionamento di A in norma euclidea soddisfa
h,N 4L2
cond2 (A) = 2 h2 ; (1.34)
h,1
dunque, la matrice diventa via via piu malcondizionata al diminuire del passo h di discretizza-
zione.
Anche quando il coefficiente elastico non e costante in [0, L], il comportamento degli au-
tovalori di A e analogo. Precisamente,
h i se (x) in [0, L], allora h,1 sara prossimo
2 2
a un valore nellintervallo L2 , L2 , mentre h,N sara prossimo a un valore nellintervallo
h i
4 4
h2 , h2 .
problema (1.12) e la soluzione dello schema numerico definita dal sistema (1.21), in funzione
del parametro di discretizzazione h. Per semplicita, supporremo qui costante il coefficiente
elastico , ma risultati del tutto simili si possono stabilire nel caso in cui sia una funzione
sufficientemente regolare di x.
Iniziamo osservando che il sistema (1.21) puo essere scritto equivalentemente come u = A1 f .
Prendendo la norma euclidea (vedi (7.14)) di ambo i membri e usando la proprieta (7.17),
otteniamo
kuk2 kA1 k2 kf k2 .
Ricordando la proprieta (7.25), abbiamo kA1 k2 = 1 h,1 ; poiche, come abbiamo visto sopra,
h,1 1 per h 0, sara h,1 c1 per una certa costante c, strettamente compresa tra 0 e 1,
indipendente da h. Concludiamo che
1
kuk2 kf k2 . (1.35)
c1
Una disuguaglianza di questo genere e un risultato di stabilita dello schema numerico. Questa
proprieta consiste nella possibita di controllare una norma della soluzione discreta mediante una
norma dei dati, attraverso una costante (in questo caso 1/(c1 )) indipendente dal parametro
di discretizzazione (in questo caso h). In assenza di una tale proprieta, la soluzione discreta
potrebbe diventare arbitrariamente grande al tendere di h a 0, allontanandosi sempre piu dalla
soluzione esatta.
Prima di procedere, introduciamo una nuova norma divettore, che indicheremo con kvk2,m ,
ottenuta semplicemente dividendo la norma euclidea per N ; in altre parole, poniamo
v
u N
1 u1 X
kvk2,m = kvk2 = t |vi |2 .
N N
i=1
Essa fornisce la media quadratica dei moduli delle componenti del vettore v; linformazione
rappresentata da questa norma e in qualche modo normalizzata rispetto alla dimensione del
vettore, e dunque tale norma e piu appropriata, rispetto alla norma euclidea, per studiare il
passaggio al limite per h 0, vale a dire per N . Notiamo inoltre che, ricordando la
definizione di norma del massimo (vedi (7.15)), si ha |vi | kvk per ogni i e dunque si ha
Introduciamo ora il vettore colonna ue = (u(xj ))1jN RN , le cui componenti sono i valori
della soluzione esatta nei nodi interni. Poiche in generale ue =
6 u, il vettore
r = Aue f , (1.38)
detto vettore residuo o errore di troncamento, non sara nullo; tuttavia, se lo schema numerico
ha da essere una approssimazione del problema (1.12), e naturale attendersi che r tenda a 0 per
1.3. STABILITA, CONSISTENZA, CONVERGENZA 13
d2 u
(ricordiamo che u e la soluzione esatta di (1.12) e dunque si ha f (x) = (x) per ogni
dx2
x (0, L)); ne segue che tali componenti sono proporzionali allerrore di approssimazione della
derivata seconda di u mediante il rapporto incrementale secondo centrato (si veda la (7.11)). Tale
errore e a sua volta proporzionale a h2 se la funzione u e derivabile quattro volte nellintervallo
[0, L]. Piu precisamente, usando la formula di Taylor con il resto di Lagrange, si puo dimostrare
che
u(xj h) 2u(xj ) + u(xj + h) d2 u 1 d4 u
2
2 (xj ) = h2 4 (xj ) , (1.39)
h dx 12 dx
dove xj e un opportuno punto nellintervallo (xj h, xj + h). Derivando due volte lequazione
differenziale soddisfatta da u otteniamo
d4 u d2 f
4
= 2 ,
dx dx
dunque la (1.39) vale sotto lipotesi che f sia derivabile due volte in (0, L). Possiamo quindi
esprimere le componenti del vettore residuo come
1 2 d2 f
rj = h (xj ) , 1jN .
12 dx2
d2 f
Introduciamo il vettore colonna D 2 f RN le cui componenti sono le quantita (xj ); osser-
dx2
viamo che se f ha derivata seconda continua in [0, L], si ha, grazie alla (1.36),
2
d f
2 2
kD f k2,m kD f k max 2 (x) .
x[0,L] dx
Si ha dunque
1 2 2
r= h D f,
12
da cui 2
1 2 1 2 d f
krk2,m = 2
h kD f k2,m h max 2 (x) . (1.40)
12 12 x[0,L] dx
Pertanto, possiamo concludere che
r0 per h 0 . (1.41)
ue u 0 per h 0 . (1.42)
14 CAPITOLO 1. IL MODELLO DEL FILO ELASTICO
Applichiamo ora la formula di integrazione per parti a primo membro, assumendo quindi che v
sia derivabile (almeno) a tratti, con derivata continua. Lequazione diventa
Z Z L
L
du dv du L
dx v = f v dx . (1.46)
0 dx dx dx 0 0
Notiamo che la soluzione u del nostro problema e essa stessa uno spostamento ammissibile (e lo
spostamento compiuto dal filo elastico proprio in corrispondenza del carico f ), dunque u V ;
tale condizione contiene in se anche il vincolo di annullamento di u agli estremi dellintervallo.
Possiamo dunque dare la seguente formulazione integrale al problema (1.12):
u V e soddisfa
Z L Z L (1.47)
du dv
dx = f v dx per ogni v V .
0 dx dx 0
Diciamo che questa e la formulazione variazionale, o debole, del problema del filo elastico. Essa
traduce in termini matematici quello che in Meccanica e noto come Principio dei Lavori Vir-
tuali : il lavoro compiuto dalla forza esterna in corrispondenza di uno spostamento ammissibile
(rappresentato dallintegrale a secondo membro della (1.47)) e uguale al lavoro compiuto dalle
reazioni elastiche del materiale (espresso dallintegrale a primo membro).
La formulazione differenziale (1.12) e quella variazionale (1.47) sono equivalenti se i dati del
problema ed f (e conseguentemente la soluzione u) sono sufficientemente regolari. E infatti
possibile dimostrare che una funzione u V , che abbia derivate prima e seconda continue in
[0, L], soddisfa la (1.12) se e solo se essa verifica la (1.47). Questo risultato giustifica luso di
tale formulazione nellapprossimazione numerica del problema. Daltro canto, la formulazione
integrale permette di trattare i casi piu generali di coefficiente elastico continuo a tratti o di
carico f concentrato in un punto.
La formulazione differenziale induce u a soddisfare infinite condizioni, una per ogni punto
dellintervallo [0, L]; similmente, la formulazione variazionale impone sulla u infinite condizioni,
una per ogni scelta della funzione test in V . Le funzioni test costituiscono un insieme molto
ricco; ad esempio, stanno in V tutti i polinomi algebrici, di qualunque grado, che si annullano
agli estremi dellintervallo. Si noti tuttavia che non tutte le equazioni variazionali rappresentate
dalla (1.47) sono indipendenti tra loro: a causa della proprieta di linearita dellintegrale definito
e della derivata, se v1 e v2 sono due spostamenti ammissibili che soddisfano lequazione
Z L Z L
du dv
dx = f v dx ,
0 dx dx 0
anche ogni loro combinazione lineare v1 + v2 , con , R arbitrari, sara uno spostamento
ammissibile che automaticamente verifichera tale equazione.
Come nel metodo alle differenze finite abbiamo selezionato un numero finito di punti in [0, L]
in cui andare a imporre una forma discreta dellequazione differenziale, cos possiamo definire un
16 CAPITOLO 1. IL MODELLO DEL FILO ELASTICO
Il metodo degli elementi finiti costituisce un modo semplice ed efficace per definire spazi Vh
di spostamenti discreti da impiegarsi nella formulazione variazionale discreta appena introdotta.
Consideriamo ancora N + 2 nodi xj nellintervallo [0, L], soddisfacenti la condizione (1.15); per
garantire una maggiore generalita al metodo, non supporremo che i nodi siano necessariamente
equispaziati. Essi definiscono una suddivisione di [0, L] in intervalli Ij = [xj1 , xj ], per j =
1, . . . , N + 1, di ampiezza hj = xj xj1 ; e conveniente porre h = max hj .
j
La scelta piu semplice per gli spostamenti discreti consiste nel considerare quegli spostamenti
ammissibili che su ogni intervallo Ij siano polinomi di grado al piu uguale a 1. Poniamo dunque
avendo indicato con P1 linsieme dei polinomi di grado minore o uguale a 1 nellintervallo Ij . Lo
spostamento discreto vh e univocamente e facilmente individuato dai suoi valori vj = vh (xj ) nei
nodi interni (j = 1, . . . , N ). Infatti, in ogni intervallo Ij esso si scrive come
xj x x xj1
vh (x) = vj1 + vj .
hj hj
v = v1 e1 + v2 e2 + + vN 1 eN 1 + vN eN , (1.50)
dove ej = (jk ) e il vettore colonna della base canonica, le cui componenti sono tutte uguali
a 0 tranne la componente j che e uguale a 1. Il vettore ej identifica lo spostamento discreto
j Vh , che assume il valore 0 in tutti i nodi tranne che nel nodo xj in cui vale 1. Tale funzione
si scrive come
x xj1
se x Ij ,
hj
j (x) = xj+1 x se x Ij+1 , (1.51)
h
j+1
0 altrimenti ;
1.4. DISCRETIZZAZIONE MEDIANTE ELEMENTI FINITI 17
vj j (x)
vj
0 xj1 xj xj+1 L
il suo grafico, mostrato in Figura 1.5, ne giustifica il nome di funzione a cappello. Ricordando
la (1.50), possiamo rappresentare ogni vh Vh come
N
X
vh (x) = v1 1 (x) + v2 2 (x) + + vN 1 N 1 (x) + vN N (x) = vj j (x) . (1.52)
j=1
Notiamo che questo sistema di N equazioni e equivalente al sistema di infinite equazioni dato
dalla (1.48). Infatti, ogni equazione contenuta in (1.48) si ottiene per combinazione lineare
XN
delle (1.53): se vh = vj j , e sufficiente moltiplicare la j-esima equazione in (1.53) per vj e
j=1
sommare su j, ottenendo
N
X Z L X N Z L
duh dj
vj dx = vj f j dx ,
0 dx dx 0
j=1 j=1
ora usiamo la linearita dellintegrale definito e della derivata per scrivere tale relazione come
Z L N Z L N
duh d X X
vj j dx = f vj j dx ,
0 dx dx 0 j=1 j=1
Ponendo Z Z
L L
dk dj
ajk = dx , fj = f j dx , (1.55)
0 dx dx 0
il sistema (1.54) si scrive come
N
X
ajk uk = fj per j = 1, . . . , N
k=1
La matrice A prende il nome di matrice di rigidezza (stiffness matrix, nella letteratura an-
glosassone); segnaliamo che piuttosto sovente essa viene denotata con K nei testi di Ingegneria
Numerica. Non ci resta che calcolarne gli elementi, insieme a quelli del termine noto f .
Notiamo innanzitutto che, in base alla definizione (1.55), la matrice e simmetrica. Inoltre,
per la proprieta di additivita dellintegrale rispetto al dominio di integrazione, si ha
N
X +1 Z
dk dj
ajk = dx ,
Im dx dx
m=1
ossia ogni elemento di matrice puo essere ottenuto sommando i contributi provenienti da ciascun
intervallo della suddivisione.
Unaltra osservazione fondamentale e che la funzione di base j e identicamente nulla al di
fuori dellintervallo [xj1 , xj+1 ] (si veda ancora la Figura 1.5); tale intervallo prende il nome di
supporto di j . Pertanto, il prodotto
dk dj
dx dx
e identicamente nullo se i supporti [xk1 , xk+1 ] e [xj1 , xj+1 ] hanno intersezione vuota, ossia se
|j k| > 2 (Figura 1.7, in alto). Se invece |j k| = 2, i supporti si intersecano in un solo punto
(Figura 1.7, al centro), ma ancora il prodotto e uguale a 0 in ogni intervallo Im . In entrambi i
casi, e dunque per |j k| 2, lelemento di matrice ajk e nullo.
Supponiamo ora k = j 1. Le funzioni j1 e j hanno supporti che si intersecano nellinter-
vallo [xj1 , xj ] = Ij (Figura 1.46, in basso); pertanto, il prodotto delle derivate e identicamente
nullo al di fuori di tale intervallo e dunque
Z
dj1 dj
aj,j1 = dx .
Ij dx dx
Su Ij , le funzioni di base sono lineari, quindi le loro derivate prime sono costanti; precisamente,
ricordando la (1.51), si ha
dj1 1 dj 1
= , = ;
dx hj dx hj
pertanto, Z
1 1
aj,j1 = 2 dx = ,
hj Ij hj j1/2
R
avendo introdotto il valor medio j1/2 = h1 j Ij dx del coefficiente elastico sullintervallo
Ij . Tale valore sovente non e calcolabile esattamente, e quindi puo essere approssimato ad
esempio con il valore j1/2 = (xj1/2 ) del coefficiente nel punto medio xj1/2 = (xj1 + xj )/2
dellintervallo. In conclusione, porremo
1
aj,j1 = .
hj j1/2
con
dj 1 dj 1
= su Ij , = su Ij+1 .
dx hj dx hj+1
20 CAPITOLO 1. IL MODELLO DEL FILO ELASTICO
j3 j
j2 j
j1 j
Figura 1.7: Interazione tra la funzione di base j e alcune funzioni di base k con k < j
Pertanto, con la medesima approssimazione del coefficiente elastico applicata sopra, otteniamo
1 1
ajj = + .
h j j1/2 h j+1 j+1/2
Per una densita di forza generica, non e possibile calcolare esattamente gli integrali; ciascuno di
essi viene
R b pertanto approssimato mediante una formula di quadratura. Usando la formula dei
trapezi a g dx (g(a) + g(b))(b a)/2 e ricordando che j e nulla in xj1 e in xj+1 e vale 1 in
xj , otteniamo il valore approssimato
hj + hj+1
fj = f (xj ) . (1.58)
2
Rb
Usando invece la formula del punto medio a g dx g((a + b)/2)(b a), otteniamo il valore
approssimato
1
fj = f (xj1/2 )hj + f (xj+1/2 )hj+1 . (1.59)
2
E interessante confrontare la struttura del sistema algebrico (1.21) ottenuto dalla discretizza-
zione mediante differenze finite, che scriviamo ADF uDF = f DF , con quella del sistema algebrico
(1.56), che scriviamo AEF uEF = f EF . Si nota che ogni elemento della matrice AEF o del ter-
mine noto f EF e dellordine di h volte il corrispondente elemento di ADF o di f DF , dove h
indica il passo locale di discretizzazione spaziale. Cio e perfettamente logico, se si ricorda che
la formulazione variazionale del problema del filo elastico, che ha generato la discretizzazione
agli elementi finiti, e ottenuta integrando sullintervallo spaziale la formulazione differenziale,
che sta alla base della discretizzazione alle differenze finite. Nel caso di suddivisione equispazia-
ta dellintervallo [0, L] (h costante) e di uso della formula (1.58) per il termine noto, abbiamo
addirittura AEF = hADF e f EF = hf DF e pertanto uEF = uDF : i due metodi forniscono la
stessa approssimazione dello spostamento u.
si ha
d2 u
ku uh k Ch2
dx2
. (1.62)
u(0) = g0 , u(L) = gL ;
in tal caso, le estremita del filo elastico saranno fissate nei punti di coordinate (0, g0 , 0) e
(L, gL , 0). Quando si assegna il valore della funzione incognita in un punto del bordo, si di-
ce che si impone una condizione di Dirichlet; essa sara detta omogenea se il valore assegnato e
0, non omogenea altrimenti.
In alternativa, e possibile assegnare lo sforzo di taglio in uno dei punti di bordo, ossia,
ricordando la (1.9), imporre la condizione
du du
(0) = 0 , oppure (L) = L .
dx dx
Una tale condizione viene della condizione di Neumann, rispettivamente omogenea o non omo-
genea a seconda che il valore assegnato sia o non sia uguale a 0. Dal punto di vista fisico, la
condizione du
dx (L) = 0 significa che lestremita destra del filo e libera di scorrere lungo la retta
di equazione x = L nel piano (x, y, 0) in cui giace il filo, e nessuno sforzo e applicato in tale
estremita. Notiamo che non sarebbe possibile assegnare una condizione di Neumann in entrambi
gli estremi dellintervallo, in quanto cio non determinerebbe univocamente la posizione del filo:
data una soluzione y = u(x) del problema, anche y = u(x) + c, con c reale arbitrario, lo sarebbe.
1.6. ALTRE CONDIZIONI AL BORDO 23
Rimandiamo al Cap. 5 per altre interpretazioni fisiche, in ambito termico, delle condizioni di
Dirichlet e di Neumann, e per un altro tipo di condizione al bordo, detta di Robin.
Per illustrare il modo di imporre una condizione di Dirichlet non omogenea o una condizione
di Neumann allinterno di un metodo di discretizzazione mediante differenze finite o elementi
finiti, consideriamo il problema ai valori al bordo
d du
=f in (0, L) ,
dx dx (1.63)
u(0) = g0 , du (L) = L ,
dx
che chiameremo problema ai valori al bordo di tipo misto Dirichlet/Neumann.
1 1 1 N +1/2
2
N +1/2 uN + N +1/2 uN +1 = fN +1 + L , (1.66)
h 2 h N +1
Si noti che la matrice A e ancora tridiagonale simmetrica, e si dimostra essere ancora definita
positiva. Nel caso in cui sia costante, abbiamo
2 se k = j N ,
1 se k = j = N + 1 ,
ajk = 2 (1.70)
h 1 se k = j 1 ,
0 altrimenti
La soluzione u del problema (1.63) sta in V (g0 ). Dati due spostamenti ammissibili v1 e v2 , la loro
differenza, o variazione, v1 v2 , soddisfa la condizione (v1 v2 )(0) = g0 g0 = 0; introduciamo
dunque anche linsieme
delle variazioni ammissibili, o funzioni test. Nel caso di condizioni di Dirichlet non omogenee,
vi e dunque differenza tra le funzioni di forma, che soddisfano tali condizioni, e le funzioni test,
che soddisfano le condizioni omogenee associate.
Nella definizione delle funzioni di forma o test, non si tiene conto della condizione di Neumann
in x = L; infatti, essa riguarda gli sforzi, non gli spostamenti. Tale condizione viene imposta
allinterno della formulazione variazionale, nel modo seguente. Partiamo dalla (1.46), ottenuta
dalla (1.46) per integrazione per parti; ora le funzioni test stanno in V (0). Il termine di bordo
vale
du L du du
v = (L)v(L) (0)v(0) = L v(L) ,
dx 0 dx dx
avendo appunto imposto la condizione di Neumann in x = L e tenuto conto dellannullarsi delle
funzioni test in x = 0. Portando tale espressione a secondo membro, otteniamo la seguente
formulazione variazionale del problema (1.63):
u V (g0 ) e soddisfa
Z L Z L (1.71)
du dv
dx = f v dx + L v(L) per ogni v V (0) .
0 dx dx 0
e
Vh (0) = {vh V (0) | vh|Ij P1 per j = 1, . . . , N + 1} ,
e si considera la formulazione variazionale discreta
uh Vh (g0 ) e soddisfa
Z L Z L (1.72)
duh dvh
dx = f vh dx + L vh (L) per ogni vh Vh (0) .
0 dx dx 0
Le nuove condizioni al bordo richiedono lintroduzione di due nuove funzioni di base di Lagran-
ge, oltre alle funzioni a cappello j , j = 1, . . . , N, considerate in (1.51). Esse sono la funzione
0 che vale 1 nel nodo di bordo x0 = 0 e 0 in tutti gli altri nodi,
h1 x se x I ,
1
0 (x) = h1 (1.73)
0 altrimenti ,
26 CAPITOLO 1. IL MODELLO DEL FILO ELASTICO
0 N +1
x0 = 0 x1 xN xN +1 = L
(avente come supporto il solo intervallo I1 ), e la funzione N +1 che vale 1 nel nodo di bordo
xN +1 = L e 0 in tutti gli altri nodi,
x xN se x IN +1 ,
N +1 (x) = hN +1 (1.74)
0 altrimenti ,
(avente come supporto il solo intervallo IN +1 ). I grafici di tali funzioni sono rappresentati in
Fig. 1.8.
La soluzione uh Vh (g0 ) del problema discreto (1.72) si rappresenta quindi come
N
X +1
uh (x) = g0 0 (x) + uk k (x) , (1.75)
k=1
Per quanto riguarda il secondo membro delle (1.78), i termini dipendenti dalle condizioni al
bordo compaiono solo per j = 1 e j = N + 1. Si ha infatti
Z L (
d0 dj h11 1/2 se j = 1 ,
dx =
0 dx dx 0 altrimenti ,
E interessante notare che, nel caso di suddivisione equispaziate dellintervallo [0, L] con passo
h e di coefficiente elastico costante in un intorno di x = L, si ha ancora
AEF = hADF e f EF = hf DF ;
dunque le discretizzazioni mediante differenze finite e mediante elementi finiti forniscono la stessa
approssimazione dello spostamento u.
r = u , (1.81)
con 0 coefficiente di proporzionalita. In altri termini, possiamo pensare che su ogni elemento
di volume V del filo agisca una molla, con costante elastica , che si oppone allo spostamento
dellelemento e tende a richiamarlo nella sua posizione di riferimento V0 . (Se = 0, intendiamo
che su quellelemento non agisca il richiamo.)
Il corrispondente modello matematico puo essere ottenuto procedendo come nel Paragrafo
1.1, semplicemente sostituendo a f la nuova espressione f u. Assumendo il filo fissato agli
estremi dellintervallo, la (1.11) diventa
d
+ f u = 0 in (0, L) ,
dx
du (1.82)
= in (0, L) ,
dx
u(0) = u(L) = 0 ,
ossia
d du + u = f in (0, L) ,
dx dx (1.83)
u(0) = u(L) = 0 .
Anche tale problema ai valori al bordo ammette una e una soluzione, se ad esempio > 0, 0
ed f sono funzioni continue (a tratti) in [0, L].
La discretizzazione di tale problema mediante differenze finite o elementi finiti conduce ancora
ad un sistema algebrico della forma
Au = f , (1.84)
dove A e la matrice di rigidezza, u e il vettore degli spostamenti nei nodi e f e il vettore dei
termini noti, dipendenti da f. E utile osservare che, essendo il primo membro della (1.83) somma
d
di due contributi, dx du
dx e u, anche la matrice A si scrivera come somma di due matrici,
ossia
N
X Z L Z L Z L
dk dj
uk dx + k j dx = f j dx per j = 1, . . . , N , (1.90)
0 dx dx 0 0
k=1
Tale matrice e simmetrica, ed e tridiagonale come la precedente, ancora come conseguenza della
localizzazione delle funzioni di base: infatti, solo gli elementi bj,j1 , bjj e bj,j+1 possono essere
non nulli in ciascuna riga.
Abbiamo Z
bj,j1 = j1 j dx ;
Ij
possiamo facilitare il calcolo dellelemento di matrice, nel caso in cui non sia costante su
Ij , approssimando tale funzione con una costante j1/2 , data ad esempio dal suo valor medio
sullintervallo o dal suo valore nel punto medio dellintervallo. In altri termini, al posto della
relazione precedente scriviamo
Z
bj,j1 = j1/2 j1 j dx .
Ij
30 CAPITOLO 1. IL MODELLO DEL FILO ELASTICO
e dunque
1
bj,j1 = j1/2 hj .
6
Per quanto riguarda il termine diagonale
Z Z
bjj = 2j dx + 2j dx ,
Ij Ij+1
Notiamo che nel caso particolare in cui sia costante su [0, L] e la suddivisione dellintervallo
sia equispaziata con passo h, lespressione precedente si semplifica in
2
se k = j ,
3
bjk = h 1 (1.93)
6 se k = j 1 ,
0 altrimenti ,
ossia si ha 1
2 1
B = h tridiag 6 3 6 . (1.94)
Applicando il teorema di Gerschgorin, deduciamo facilmente che tutti gli autovalori della
matrice B sono 0; tuttavia non possiamo escludere che alcuni di essi siano nulli, se qualche
coefficiente j+1/2 e nullo (ricordiamo che abbiamo supposto 0 in [0, L]). Dunque sotto
questa ipotesi la matrice B e solo semidefinita positiva, ossia soddisfa xT Bx 0 per ogni
x RN ; essa e definita positiva se > 0 in [0, L]. Tuttavia, e immediato vedere che la somma
di una matrice definita positiva (quale la A() ) e di una matrice semidefinita positiva (quale la
B = A() ) e ancora definita positiva; concludiamo pertanto che la matrice A data dalla (1.85)
e simmetrica definita positiva.
In un contesto fisico diverso (si veda il Paragrafo 4.1), la matrice B ora introdotta viene detta
matrice di massa. Il coefficiente assume allora il significato fisico di densita lineare di massa.
Capitolo 2
2.1 Il modello
La deduzione del modello di membrana elastica estende alle due dimensioni spaziali quella del
modello di filo elastico vista nel Paragrafo 1.1.
Consideriamo una membrana elastica sottile, di spessore 2, la cui sezione mediana occupa in
posizione di riposo una regione limitata del piano x1 x2 ; in altri termini, in assenza di forze
esterne la membrana e data da [, ]. Supponiamo che la membrana sia fissata lungo la
superficie laterale [, ], dove indica il bordo di . Applichiamo ad essa una (piccola)
densita volumica di forza f = 0e1 + 0e2 + f3 e3 , diretta normalmente alla sezione mediana
della membrana. Essa induce un (piccolo) spostamento u = u1 e1 + u2 e2 + u3 e3 a partire dalla
posizione di riferimento; in prima approssimazione le componenti u1 e u2 saranno trascurabili
rispetto alla componente u3 che descrive lo spostamento nella direzione della forza.
Sia V0 = [, ] un elemento di membrana nella posizione di riferimento; siano 0 =
[, ] la superficie laterale dellelemento. Esso si trasforma nellelemento V per effetto
della forza applicata; sia la superficie laterale trasformata. Indichiamo con il tensore degli
sforzi della membrana, dato dalla (1.1), e con n la normale a , orientata nel verso uscente da
V . Lequazione di equilibrio e
Z Z
f dV + n d = 0 . (2.1)
V
dove
Z Z
1 1
f (x1 , x2 ) = f (x1 , x2 , x3 ) dx3 e (x1 , x2 ) = (x1 , x2 , x3 ) dx3
2 2
sono i valori medi di f e lungo lo spessore della membrana, mentre n = (n1 , n2 , 0)T e il
vettore normale a orientato nel verso uscente, che dora in avanti confonderemo con il vettore
bidimensionale n = (n1 , n2 )T . Si noti che la (2.2) e lanaloga della (1.4) nel caso bidimensionale.
31
32 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
Prendiamo ora la componente di tale equazione lungo lasse x3 , ossia formiamone il prodotto
scalare con e3 , ottenendo
Z Z
f3 dx1 dx2 + 31 n1 + 32 n2 ds = 0 .
f3 + 3 = 0 in , (2.3)
3 = u3 , (2.5)
u=0 su , (2.7)
che esprime il fatto che la membrana e fissata al bordo. Sostituendo lespressione di data dalla
seconda delle (2.6) nella prima equazione, otteniamo il problema ai valori al bordo
(u) = f in ,
(2.8)
u = 0 su .
yN +1 = L
(x , ym )
ym (xN +1 , ym )
x0 = y 0 = 0 x xN +1 = L
Figura 2.1: La griglia computazionale con i vari tipi di nodi: nodi interni forti (pallini scuri),
nodi interni deboli (quadrati), nodi di bordo (rombi)
u = f in , (2.9)
dove lespressione
2u 2u
u = + 2 (2.10)
x2 y
indica il Laplaciano della funzione u.
I restanti valori di um , relativi ai nodi interni, sono definiti imponendo in ciascuno di tali nodi
unapprossimazione dellequazione (2.9), ottenuta sostituendo alle derivate parziali seconde di
34 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
N
j+N
(, m + 1)
( 1, m) (, m) ( + 1, m) j 1 j j +1
O E
(, m 1)
jN
S
Figura 2.2: La molecola computazionale del metodo delle differenze finite per il Laplaciano:
numerazione dei nodi a due indici (a sinistra), numerazione a un indice quando il centro della
molecola e un nodo interno forte (a destra)
u che compaiono nel termine u i rapporti incrementali secondi centrati (si ricordi la (7.11)).
Precisamente, osservando che x h = x1 e che ym h = ym1 , si ha
In ogni equazione (2.14) relativa a un nodo interno forte compaiono esattamente 5 incognite
di spostamento. Invece, in unequazione relativa a un nodo interno debole compare un numero
minore (3 oppure 4) di incognite. Infatti, una tale equazione fa intervenire anche i valori di
spostamento in alcuni nodi di bordo; tali valori sono definiti dalle (2.11) e pertanto non sono
incogniti; essi vanno sostituiti nellequazione. Dopo questa fase, tutte le equazioni (2.14) con-
terranno solamente incognite di spostamento nei nodi interni. Ad esempio, lequazione relativa
al nodo debole (1, 1) diventa
(4u11 u21 u12 ) = f11 , (2.15)
h2
quella relativa a un nodo debole (, 1) con 2 N 2 assume la forma
(u1,1 + 4u1 u+1,1 u2 ) = f1 , (2.16)
h2
mentre quella relativa a un nodo debole (N, m) con 2 m N 2 e
(uN,m1 uN 1,m + 4uN m uN,m+1 ) = fN m . (2.17)
h2
Per tradurre il sistema di equazioni algebriche cos ottenuto nella forma Au = f , e necessario
passare dalla numerazione a due indici (, m) dei nodi interni ad una numerazione ad un solo
indice, sia esso j. Cio viene realizzato adottando lordinamento lessicografico, in cui sono elencati
dapprima gli N nodi della prima riga dal basso (m = 1), poi quelli della seconda riga (m = 2),
e cos via; allinterno di ogni riga la numerazione procede da sinistra verso destra. Si vede
facilmente che
j = + (m 1)N e si ha 1 j N2 . (2.18)
Al contrario, dato j si puo risalire a (, m) eseguendo la divisione intera di j per N ; detto q il
quoziente e r il resto, si pone
(
= r, m = q + 1 se 0 < r < N ,
(2.19)
= N, m = q se r = 0 .
Le equazioni relative ai nodi interni deboli contengono soltanto le incognite (in numero di 3
oppure 4) associate ai nodi interni della molecola computazionale. Ad esempio, lequazione
(2.15) si esprime come
(4u1 u2 uN ) = f1 ; (2.22)
h2
36 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
10
15
20
25
0 5 10 15 20 25
nz = 105
Figura 2.3: Struttura della matrice A per N = 5. I pallini indicano la posizione degli elementi
non nulli
Si noti che i termini aj,j+1 per j = pN , p = 2, . . . , N 1, sono nulli; cio traduce il fatto che nelle
equazioni (2.24) non compare lincognita uj+1 . La struttura della matrice, nel caso N = 5, e
mostrata in Figura 2.3.
Vediamo ora qualche proprieta della matrice A. Applicando il teorema di Gerschgorin, otte-
niamo immediatamente che i suoi autovalori sono tutti contenuti nellintervallo (0, 8 h2
); pertanto,
A e una matrice simmetrica e definita-positiva. Inoltre, nella Sez. 4.2.1 si dimostra che, come
2.2. DISCRETIZZAZIONE MEDIANTE DIFFERENZE FINITE 37
nel casa del filo elastico, il numero di condizionamento peggiora con il raffinamento della griglia;
si ha precisamente
cond2 (A) ch2 CN 2 . (2.26)
Lo schema alle differenze finite in due dimensioni ora considerato gode di proprieta di stabi-
lita, consistenza e convergenza analoghe a quelle del corrispondente schema monodimensionale,
presentate nel Paragrafo 1.3. In particolare, se la soluzione esatta u ammette derivate parziali
quarte in ciascuna variabile limitate in , si ha la stima dellerrore
4 4
u u
max |u(x , ym ) u,m | Ch max 4 + 4 .
2
(2.27)
0,mN x x y
Cio mostra che lo schema ha convergenza quadratica.
E utile evidenziare la struttura tridiagonale a blocchi della matrice A. A tale scopo, raggrup-
piamo le incognite in blocchi di N elementi, corrispondenti ai nodi che stanno su una stessa riga
della griglia, cioe ai nodi di indici , m con m fissato. Introduciamo dunque, per m = 1, . . . , N ,
i vettori colonna N dimensionali
um = (um )1N = u+(m1)N 1N .
Possiamo allora identificare il vettore delle incognite u = (uj )1jN 2 con il vettore colonna N -
dimensionale (um )1mN i cui elementi sono a loro volta i vettori um . Una analoga partizione
viene effettuata sul termine noto, ponendo
con D, C blocchi 5 5; per semplicita, abbiamo omesso i blocchi nulli.) Piu in generale, con la
notazione introdotta in (1.27), possiamo scrivere
A = tridiag [C D C] .
38 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
Le equazioni del sistema Au = f possono allora essere scritte in forma compatta come
Du1 + Cu2 = f 1 ,
Cum1 + Dum + Cum+1 = f m , 2mN 1. (2.30)
CuN 1 + DuN = f N ,
Il sistema lineare scritto in tale forma puo essere risolto attraverso un metodo diretto basato
sulleliminazione gaussiana a blocchi, oppure attraverso un metodo iterativo a blocchi (Jacobi,
Gauss-Seidel, rilassamento).
Osservazione 2.2.1 Nel caso in cui la condizione al bordo di Dirichlet sia non omogenea, cioe
u=g su , (2.31)
con gm = g(x , ym ). Tali valori vanno sostituiti nelle (2.14) relative ai nodi interni deboli, in
corrispondenza degli spostamenti di bordo che compaiono a primo membro. Dopo le sostituzioni,
si porta a secondo membro tutto cio che e noto. Pertanto, si perviene a un sistema lineare
Au = f in cui A e la stessa matrice del caso omogeneo, mentre f dipende anche dai valori di
bordo g.
Il trattamento di una condizione di Neumann
u
=, (2.33)
n
(con n normale esterna al bordo) assegnata su un lato del quadrato, ad esempio
u u
= = L sul lato vertcale x = L , (2.34)
n x
si effettua applicando, riga per riga della griglia, la procedura illustrata nel Paragrafo 1.6.1. I
dettagli sono lasciati al lettore.
proposito la Sez. 1.6), che vengono usate per imporre lequazione di equilibrio in (la prima
delle (2.8)) in modo integrale. A tale scopo, moltiplichiamo tale equazione per una generica
funzione test v V e integriamo su , ottenendo
Z Z
(u)v dx = f v dx . (2.35)
Per scrivere in forma equivalente il primo membro, ricordiamo il Teorema della divergenza 7.1 e
applichiamolo in (supponendo quindi che tutte le ipotesi per la sua validita siano verificate)
al campo vettoriale g = wv, dove w = u e v e la funzione test scelta. Abbiamo
Z Z Z
(wv) dx = (wv) n ds = (w n) v ds ,
Si noti la perfetta analogia formale con la formulazione (1.47) del problema monodimensionale.
Non abbiamo finora specificato le condizioni di derivabilita sulle funzioni di V ; farlo in modo
rigoroso richiederebbe lintroduzione di strumenti matematici avanzati (i cosiddetti spazi di
Sobolev ). Ci limitiamo a dire, in modo impreciso, che V contiene le funzioni nulle al bordo per
le quali i due integrali che compaiono nella (2.37) sono finiti. Cio accade, supponendo che il
coefficiente sia limitato in e che il termine noto f sia di quadrato integrabile in , ossia
soddisfi Z
|f |2 dx < + ,
40 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
T3
T2
T1 T2
T1
Figura 2.4: Situazioni non ammissibili in una triangolazione: i due triangoli T1 e T2 sono
parzialmente sovrapposti (a sinistra); lintersezione tra i triangoli T1 e T2 , oppure T1 e T3 , non
e un intero lato per entrambi (a destra)
La definizione rigorosa di V e data in modo tale da garantire che il problema (2.37) ammetta
una e una sola soluzione.
Tra le funzioni di V ci sono tutte le funzioni continue con derivate parziali prime continue in
; ma stanno in V anche le funzioni continue in ed ivi derivabili a pezzi, ossia per le quali
esista una suddivisione di in un numero finito di regioni chiuse C1 , . . . , Cm tali che v ammetta
derivate parziali prime continue e limitate allinterno di ciascuna regione Ci .
E la presenza in V di questultimo tipo di funzioni che permette lapprossimazione del pro-
blema variazionale (2.37) mediante il metodo degli elementi finiti. Introduciamo quindi tale
discretizzazione.
- linsieme vuoto.
Con tale condizione, escludiamo quindi che due triangoli possano parzialmente sovrapporsi,
o possano avere soltanto una parte di lato in comune (si veda la Fig. 2.4). Chiamiamo
2.3. DISCRETIZZAZIONE MEDIANTE ELEMENTI FINITI 41
4 22 34 6 40 11 3
26 48 2 58 38
27
60
42 18 20 62 6 23
30 42 41 28
23 37
57 41 61 59 10
16 17 19 19
55 39 50 28 12 66
56 49 35
38 8 36 45
52 51 31
16 5 67
24 68 12
8 64 9 46 25 7
30 14 15
17 32
43 63 45 21 3
37 11
33 32 44
47 54
29 15 14 65
1 7
21 46 18 53 20
9 13
35 43
27 26 31 29
25 4 22 24
33 39
36 34 44 40
1 10 5 13 2
h = max hT ;
T T
tale parametro rappresenta una misura della finezza della triangolazione. Talvolta scriveremo
T = Th per evidenziare questa lunghezza caratteristica della griglia.
I vertici x dei triangoli di T sono detti i nodi della triangolazione. Distinguiamo tra i nodi
interni, appartenenti a , che supponiamo essere in numero di Nhi , e i nodi di bordo, appartenenti
a , che supponiamo essere in numero di Nhb . Il numero totale di nodi della triangolazione sara
dunque Nh = Nhi +Nhb . E utile supporre, al fine di una semplificazione logica della presentazione,
che i nodi interni siano numerati progressivamente da 1 a Nhi ed i nodi di bordo siano numerati
da Nhi + 1 a Nh ; tuttavia tale convenzione, che noi adotteremo nel seguito, non e affatto richiesta
nella implementazione pratica del metodo.
Indichiamo con xj il j-esimo nodo della triangolazione, avente coordinate (xj1 , xj2 ) = (xj , yj ).
Linsieme
T (j) = {T T : xj T } (2.38)
contiene tutti i triangoli che hanno xj come vertice (si veda la Fig. 2.6).
Sia T T un qualunque triangolo della triangolazione, e siano xj , xk , xl i suoi tre vertici
(vedi ancora la Fig. 2.6). Lipotesi che il triangolo non sia degenere (cioe che i tre vertici non
42 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
siano allineati) equivale alla condizione che i due vettori xj xl e xk xl non siano paralleli,
ossia che il loro prodotto vettoriale non sia nullo:
(xj xl ) (xk xl ) 6= 0 .
Posto
xj1 xl1 xj2 xl2
G= , (2.39)
xk1 xl1 xk2 xl2
si ha
(xj xl ) (xk xl ) = (det G) e3
e dunque la condizione di non degenerazione di T equivale alla non singolarita della matrice G.
Abbiamo inoltre una espressione per larea di T in funzione dei suoi vertici; infatti, ricordando
che il modulo di un prodotto vettoriale rappresenta larea del parallelogramma individuato dai
due vettori, otteniamo
1
area(T ) = |det G| . (2.40)
2
xk
T
xj
Ricordando che gli spostamenti ammissibili possono essere funzioni globalmente continue e
derivabili a pezzi, e osservando che i polinomi sono certamente funzioni derivabili, introducia-
mo linsieme Vh delle funzioni continue che su ogni triangolo di T coincidono con una funzione
affine, ossia poniamo
Per il problema di Dirichlet omogeneo (2.37), gli spostamenti ammissibili discreti (le funzioni di
forma e test discrete) saranno gli elementi di Vh che si annullano sul bordo ; poniamo quindi
Vh = {vh Vh : vh = 0 su } . (2.43)
ossia
xj1 xj2 1 vj
xk1 xk2 1 = vk , (2.44)
xl1 xl2 1 vl
la cui matrice ha determinante det G 6= 0 (dove G e la matrice definita in (2.39)), come si vede
sottraendo la terza equazione dalle prime due; pertanto, il sistema ammette una e una sola
soluzione.
Altri gradi di liberta possono essere i valori di p nei 3 punti medi dei lati, xjk = 12 (xj + xk ),
xkl = 21 (xk + xl ), xlj = 12 (xl + xj ), oppure i 3 momenti di ordine 1 di p,
Z Z Z
p(x, y) dxdy , p(x, y) x dxdy , p(x, y) y dxdy .
T T T
La scelta dei gradi di liberta sullelemento incide sulla possibilita di imporre la continuita nel
passaggio tra due elementi contigui (come richiesto alle funzioni di Vh ), oppure le condizioni
al bordo di Dirichlet (come richesto alle funzioni di Vh ). A tal fine, la seguente osservazione e
fondamentale. Ogni funzione p P1 (T ), ristretta ad un lato L del triangolo T , e una funzione
affine sul lato, cioe un polinomio di primo grado in una variabile; possiamo scrivere p|L P1 (L).
Supponiamo infatti che L sia il lato di estremi xj e xk ; se esso non e disposto verticalmente, la
sua equazione e
xj2 xk2
y = xk2 + (x xk1 ) ,
xj1 xk1
44 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
xk
T2
L
T1
xj
Prima di procedere, notiamo gli ingredienti che concorrono a definire un elemento finito:
essi sono il supporto geometrico (nel nostro caso, un triangolo non degenere T ), lo spazio di
funzioni definite sul supporto geometrico (nel nostro caso, P1 (T ), lo spazio 3-dimensionale delle
funzioni affini su T ) e linsieme dei gradi di liberta che individuano le funzioni (nel nostro caso,
i valori delle funzioni nei vertici di T ). Lelemento finito che abbiamo introdotto, estremamente
semplice e versatile, e per questo molto popolare, e noto come elemento di Courant. Esso fu
proposto dal matematico Richard Courant nel 1942 ed e probabilmente il primo elemento finito
della storia.
j (xk ) = jk , 1 j, k Nh . (2.45)
Osserviamo che se il triangolo T non contiene il vertice xj , allora j si annulla nei 3 vertici del
triangolo e dunque sara identicamente nulla su T . Pertanto, j e diversa da 0 in tutti e soli i
triangoli che hanno xj come vertice, cioe nei triangoli di T (j). Il supporto di j e definito come
lunione di tali triangoli, ossia poniamo
[
supp j = T . (2.46)
T T (j)
Il grafico di j , nel caso in cui xj sia un nodo interno, spiega perche tali funzioni siano dette
46 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
funzioni a piramide (si veda la Fig. 2.8). Le funzioni j formano una base di Vh ,
Vh = vett {j : 1 j Nh } ,
in quanto ogni funzione vh Vh puo essere espressa come
Nh
X
vh (x) = vj j (x) , con vj = vh (xj ) . (2.47)
j=1
Pertanto, i due membri della (2.47) coincidono in tutti i nodi della triangolazione, e dunque
coincidono ovunque.
Per ottenere una base di Lagrange in Vh , e sufficiente limitarsi alle funzioni j con 1 j Nhi .
Infatti, se vh Vh , si ha vj = vh (xj ) = 0 per Nhi + 1 j Nh e dunque la (2.47) diventa
Nh i
X
vh (x) = vj j (x) , (2.48)
j=1
ossia
Vh = vett {j : 1 j Nhi } .
Au = f , (2.50)
avendo posto
con Z Z
ajk = k j dx , fj = f j dx . (2.51)
Studiamo ora le proprieta della matrice di rigidezza A, che in particolare ci garantiranno
che il sistema lineare (2.50) ammette una e una sola soluzione, e ci forniranno indicazioni sulle
migliori strategie di soluzione di tale sistema; successivamente, analizziamo brevemente come
costruire in modo efficiente gli elementi della matrice e del vettore termine noto.
Ricordiamo poi che se T 6 T (j), allora j e identicamente nulla su T e dunque anche il suo
gradiente sara ivi identicamente nullo; quindi
Z
k j dx = 0 se T 6 T (j) oppure se T 6 T (k) ,
T
ossia Z
X
ajk = k j dx . (2.52)
T T (j)T (k) T
Se k = j, abbiamo quindi
X Z
ajj = kj k2 dx ;
T T (j) T
gli elementi diagonali sono tutti strettamente positivi e sono ottenuti per integrazione sul
supporto della corrispondente funzione di base (si ricordi la (2.46)).
Sia ora k 6= j. Se esiste un triangolo T appartenente a T (j) T (k), esso ha i nodi xj e xk
come vertici; ovviamente, cio e possibile se e solo se i due nodi sono collegati da un lato della
triangolazione. Dunque, se xj e xk stanno su uno stesso lato (necessariamente non di bordo),
allora T (j) T (k) non e vuoto: esso e formato dai due triangoli T1 e T2 che condividono quel
lato; avremo quindi
Z Z
ajk = k j dx + k j dx , con T1 , T2 T (j) T (k) ,
T1 T2
48 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
Mostriamo infine che la matrice di rigidezza e definita positiva. Non avendo a disposizione
una semplice espressione per gli elementi di matrice, come nella Sez. 1.2, a causa della arbitra-
rieta della triangolazione, non possiamo usare il teorema di Gershgorin per dimostrare che tutti
gli autovalori di A sono strettamente positivi. Verifichiamo invece la condizione equivalente
v T Av > 0 per ogni vettore v 6= 0. La componente j-esima del vettore Av e data da
N N Z Z N
!
X X X
(Av)j = ajk vk = vk k j dx = vk k j dx ,
k=1 k=1 k=1
P PN
Indichiamo con vh Vh la funzione N k=1 vk k = j=1 vj j (le due espressioni coincidono, in
quanto k e j sono indici muti di somma). Abbiamo quindi
Z Z
T
v Av = vh vh dx = kvh k2 dx 0 (2.53)
2.3.6 Costruzione della matrice di rigidezza e del vettore dei termini noti
Abbiamo visto (si ricordi la (2.52)) che il generico elemento non nullo della matrice di rigidezza
e una somma di contributi provenienti
R da un certo numero di triangoli di T . Lo stesso vale per
il termine noto: lelemento fj = f j dx puo essere scritto come
X Z
fj = f j dx . (2.54)
T T (j) T
In un codice a elementi finiti, la costruzione della matrice di rigidezza e del vettore dei termini
noti puo essere logicamente suddivisa in due fasi distinte:
- un ciclo sui triangoli di T , in cui per ogni triangolo si calcolano i contributi di quel
triangolo alla matrice di rigidezza e al vettore dei termini noti;
- lassemblaggio della matrice e del vettore, in cui i contributi provenienti dai vari triangoli
vengono sommati opportunamente per dar vita agli elementi di matrice e di vettore.
In realta, per motivi di efficienza, la seconda fase si realizza in pratica nel corso dellesecuzione
della prima: man mano che i contributi di un triangolo si rendono disponibili, essi sono aggiunti
al valore corrente dei corrispondenti elementi di matrice e di vettore (inizialmente posti a 0);
solo al termine del ciclo sui triangoli, tutti gli elementi di matrice e di vettore avranno assunto
il valore corretto.
x57 = x[2]
x56 = x[1]
x63 = x[3]
Figura 2.9: Esempio di passaggio dalla numerazione globale dei nodi a quella locale sul triangolo.
Gli indici locali sono racchiusi tra parentesi quadre per distinguerli da quelli globali
e similmente
Z Z
f j dx si rappresenta come f dx , 13.
T T
Possiamo dunque introdurre la matrice di rigidezza dellelemento, cioe del triangolo, (detta
elemental stiffness matrix nella letteratura anglosassone)
Z
(T ) (T )
A(T ) = (a )1,3 R33 , con a = dx ,
T
(non si confonda lapice (T ), che fa riferimento al triangolo T , con lapice T che indica la
trasposizione di una matrice o di un vettore).
2.3. DISCRETIZZAZIONE MEDIANTE ELEMENTI FINITI 51
Calcolo dei contributi di un elemento Vediamo ora come calcolare gli elementi di matrice
e di vettore appena introdotti. Osserviamo che e un vettore costante in T , in quanto e
una funzione affine. Dunque
Z
(T )
a = dx = T area(T ) , (2.55)
T
(x) (x0 ) = (x x0 ) ,
in quanto e affine e quindi tutte le sue derivate di ordine superiore al primo sono nulle. Si
ha dunque, applicando la formula precedente ai vertici del triangolo,
1 = (x ) (x ) = (x x ) , con 6= ,
0 = (x ) (x ) = (x x ) , con 6= , 6= .
dove e indicano i due indici diversi da nellinsieme {1, 2, 3}; si noti che la matrice del
sistema e una particolare matrice G come definita in (2.39). Si ha quindi
x2 x2 x1 x1
,x = , ,y = . (2.57)
det G det G
Ricordando la (2.40), se i nodi x , x e x si susseguono in senso antiorario (come in Fig. 2.9)
si ha det G = 2area(T ) > 0 e dunque le formule precedenti diventano
x2 x2 x1 x1
,x = , ,y = ; (2.58)
2area(T ) 2area(T )
x
x
E utile osservare che la funzione affine 1 + 2 + 3 vale 1 in ciascuno dei vertici di T , dunque
e costante:
1 (x) + 2 (x) + 3 (x) = 1 per ogni x T . (2.59)
Applicando il gradiente, si deduce lidentita
1 + 2 + 3 = 0 , (2.60)
che permette ad esempio di calcolare il gradiente di una funzione di base, noti gli altri due. Una
conseguenza di questultima relazione e che la somma gli elementi di ogni riga (o colonna) della
matrice A(T ) e nulla. Infatti, per = 1, 2, 3, si ha
X3 X 3 Z Z X3
(T )
a, = dx = dx (2.61)
=1 =1 T T =1
Z
= 0 dx = 0 . (2.62)
T
Tale proprieta fornisce unutile prova del 9 sulla correttezza del calcolo degli elementi della
matrice di rigidezza di un elemento.
Anche per la matrice di rigidezza globale A vale la proprieta che la somma gli elementi di
ogni riga (o colonna) e nulla, relativamente pero alle righe (o colonne) associate ai vertici v j tali
che tutti i vertici dei triangoli di T (j) siano nodi interni di T . Infatti, in tal caso, la somma di
tutte le funzioni di base e costante = 1 sul supporto di j .
Osservazione 2.3.1 E possibile giungere alle (2.58) anche attraverso un ragionamento pura-
mente geometrico. Si osservi infatti che la funzione affine si annulla lungo il lato L di estremi
x e x (che supponiamo ordinati in senso antiorario) ed e costante lungo ogni retta parallela a
tale lato. Conseguentemente, il suo gradiente e perpendicolare al lato,
(x x ) = 0 ;
tenendo conto che la funzione cresce muovendosi dal lato L verso il vertice opposto x , il
suo gradiente puntera verso linterno del triangolo (si veda la Fig. 2.10), si ha quindi
= (x2 x2 , (x1 x1 ))
2.3. DISCRETIZZAZIONE MEDIANTE ELEMENTI FINITI 53
per un opportuno > 0. Tale costante e determinata dal fatto che, muovendosi nella direzione
del gradiente dal lato L al vertice x , la funzione si incrementa di 1; in altri termini, detta
HT laltezza del triangolo rispetto alla base L, si ha
1 = k k HT .
Essendo |L| HT = 2area (T ) con |L| = kx x k lunghezza del lato L, si ottiene facilmente
= 1/2area (T ).
1 0 12 1
= = ;
y h0 2h
1 1
1 1
pertanto, 1 = 2h , 2h . Similmente, si ha 3 = 2h , 2h . Invece, la funzione 2 e
costante = 0 sul segmento orizzontale di estremi x3 e x1 , mentre passa dal valore 0 al valore 1
lungo in segmento verticale di estremi lorigine e x2 ; quindi 2 = 0, h1 .
Larea del triangolo vale h2 . Applicando la formula (2.55), otteniamo facilmente la matrice
cercata: 1
1
2 2 0
A(T ) = 12 1 21 .
0 12 1
2
Passiamo infine al calcolo degli elementi del vettore dei termini noti. Usiamo la seguente
formula di integrazione numerica
Z
1
g dx g(x1 ) + g(x2 ) + (x3 ) area(T ) , (2.63)
T 3
che e esatta per funzioni affini e generalizza al caso bidimensionale la formula dei trapezi su un
intervallo reale.
54 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
Sotto questa ipotesi, per una triangolazione regolare, si ha che lerrore tende a zero quadratica-
mente in h se misurato nella norma quadratica, ossia
ku uh k2 Ch2 kukH,2 ,
e linearmente in h se misurato nella norma dellenergia, ossia
ku uh kE ChkukH,2 .
Se in aggiunta u ha le derivate parziali seconde di norma del massimo limitata, ossia se
2
u
kukH, = max
< + ,
1i,j2
xi xj
allora lerrore tende a zero quasi quadraticamente in h se misurato nella norma del massimo,
ossia si ha
ku uh k Ch2 | log h|3/2 kukH, .
Nelle formule precedenti, C indica una costante positiva indipendente da u e da h.
2.3. DISCRETIZZAZIONE MEDIANTE ELEMENTI FINITI 55
Si noti come la condizione di Dirichlet sia presa in conto nella scelta delle funzioni di forma, men-
tre la condizione di Neumann sia inserita allinterno delle equazioni integrali. Si puo dimostrare
che se u e soluzione di (2.67) ed e abbastanza regolare, allora e anche soluzione di (2.66).
Passiamo ora alla discretizzazione. Supponiamo che la triangolazione sia stata costruita in
modo tale che D sia unione di lati di triangoli. Supponiamo inoltre (per pura semplicita
espositiva) che i nodi di bordo su N siano numerati per primi rispetto a quelli su D .
Linsieme degli spostamenti ammissibili discreti, o funzioni di forma discrete, viene definito
come
Vh (g) = {vh Vh : vh (xj ) = g(xj ) per ogni xj D } , (2.68)
dove Vh e stato introdotto in (2.42); linsieme delle variazioni ammissibili discrete, o funzioni test
discrete, sara dunque Vh (0). Le funzioni di Vh (g) e di Vh (0) sono univocamente determinate dai
loro valori nei nodi interni e appartenenti a N della triangolazione. Tali nodi sono dunque quelli
che portano i gradi di liberta; indichiamo ancora con N il loro numero (con Nhi N < Nh ). Si
avra pertanto
Vh (0) = vett {j : 1 j N } ,
56 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
essa differisce da quella relativa al problema di Neumann solo per la presenza dellintegrale su
N a primo membro.
La corrispondente discretizzazione fornisce ancora le equazioni algebriche (2.71), in cui ora gli
elementi della matrice di rigidezza sono dati da
Z Z
ajk = k j dx + k j ds .
N
Poiche 0 per ipotesi, non e difficile verificare che la matrice A, simmetrica, risulta ancora
definita positiva. Si noti che lintegrale su N e nullo per tutte le funzioni j associate ai nodi
interni; in altri termini, la condizione di Robin modifica la matrice di rigidezza solo nelle righe
corrispondenti ai nodi che giacciono su N .
58 CAPITOLO 2. IL MODELLO DELLA MEMBRANA ELASTICA
Capitolo 3
Il trattamento numerico di modelli differenziali conduce sovente alla necessita di risolvere sistemi
lineari di grandi dimensioni con matrici sparse. Scriveremo un tale sistema come
Ax = b , (3.1)
essendo A una matrice quadrata di ordine n, non singolare e sparsa (che supponiamo avere al
piu m << n elementi diversi da 0 in ogni riga), b il vettore colonna dei termini noti e x il vettore
colonna delle incognite.
La soluzione del sistema mediante un metodo diretto, quale ad esempio il metodo di elimina-
zione di Gauss con pivoting parziale sulle righe, equivale a fattorizzare la matrice PA, ottenuta
effettuando una opportuna permutazione delle righe di A mediante lapplicazione di una matrice
di permutazione P, in forma
PA = LU ,
con L e U matrici triangolari, rispettivamente inferiore e superiore. Se A e una matrice simme-
trica e definita positiva, P puo essere scelta come la matrice identica I, mentre U puo coincidere
con LT ; in altri termini, si ha A = LLT (fattorizzazione di Choleski).
La soluzione del sistema (3.1), che indicheremo con x, e ottenuta dalla relazione
LUx = PAx = Pb
Ux = y
per sostituzione allindietro. Luso di un metodo diretto puo avere un costo proibitivo, sia
in termini di occupazione di memoria, poiche in genere le matrici L e U hanno un numero
molto maggiore di elementi diversi da 0 di A (fenomeno del fill-in), sia in termini di numero di
operazioni richieste per ottenere la soluzione.
Un metodo iterativo per la risoluzione del sistema (3.1) genera, a partire da un valore di
tentativo x0 , una successione {xk }k0 che converge verso x. Esempi classici di metodi itera-
tivi sono i metodi di Jacobi, di Gauss-Seidel e di rilassamento, che si basano su opportune
59
60 CAPITOLO 3. METODI ITERATIVI PER LA RISOLUZIONE DI SISTEMI LINEARI
decomposizioni della matrice A. Tra questi, il metodo concettualmente piu semplice e quel-
lo di Jacobi: esso parte dalla decomposizione della matrice del sistema in A = D + G, dove
D = diag(A) = diag(a11 , a11 , . . . , ann ) e la diagonale di A mentre G = A D; supponendo
non nulli tutti gli elementi diagonali di A, il metodo genera la successione {xk }k0 mediante la
ricorsione
Dxk+1 + Gxk = b , ossia xk+1 = D1 (Gxk + b) .
Nel seguito, studieremo invece metodi iterativi che fanno intervenire la matrice A soltanto
attraverso prodotti matrice-vettore del tipo Az. Tali metodi sono anche detti matrix-free, in
quanto non discriminano come i precedenti tra gli elementi della matrice; essi richiedono soltanto
una routine tipo scatola nera, che dato in ingresso un vettore z fornisca in uscita il vettore
Az.
E utile per il nostro studio introdurre il concetto di residuo dellequazione (3.1) relativo a un
vettore x, definito come
r(x) = b Ax . (3.2)
Notiamo che
x e soluzione di (3.1) r(x) = 0 .
Inoltre, per k ,
xk x rk = r(xk ) 0 .
Una situazione di notevole importanza e quella in cui A e una matrice simmetrica e definita
positiva. Associamo al sistema (3.1) il funzionale 1
1 T
J : Rn R, J(x) = x Ax xT b . (3.3)
2
Esso gode della seguente proprieta:
1 T
J(x) = x Ax xT Ax
2
1 T 1 1
= x Ax xT Ax xT Ax
2 2 2
1 T 1 T 1 T 1 1
= x Ax x Ax x Ax + xT Ax xT Ax
2 2 2 2 2
1 T 1 T
= (x x) A(x x) x Ax .
2 2
n
X n
X
1
Derivando lespressione J(x) = 2 ars xr xs br xr rispetto a xi , i = 1, . . . , n e tenendo
r,s=1 r=1
conto della simmetria della matrice, abbiamo
n n n
J 1X 1X X
(x) = ais xs + ari xr bi = ais xs bi
xi 2 s=1 2 r=1 s=1
Notiamo che cio e coerente con la proprieta (3.4), in quanto in un punto di estremo libero di
una funzione derivabile il suo gradiente si annulla. Derivando ulteriormente, abbiamo
2J
(x) = aij , 1 i, j n ;
xi xj
HJ(x) = A . (3.7)
e dunque
n
X yi2
zT Az = c2 2 = 1 . (3.9)
i=1 c
i
Cio mostra he le varieta di livello del funzionale K(z) = zT Az sono degli ellissoidi (ellissi se n =
2) aventi gli assi principali orientati secondo gli autovettori di A; la lunghezza di ciascun semiasse
e proporzionale al reciproco della radice quadrata del corrispondente autovalore. Ricordando la
(3.5), le varieta di livello di J si ottengono da queste per traslazione nel punto x, come mostra
la Figura 3.2 nel caso n = 2.
3
2 1 0 1 2 3 4 5 6
P
seguente. Sia vh = N j=1 vj j Vh lo spostamento ammissibile discreto associato al vettore
v = (vj )1jN . Ricordiamo la (2.53) e parimenti osserviamo che
XN Z Z N
X Z
T
v f= vj f j dx = f vj j dx = f vh dx .
j=1 j=1
Pertanto, si ha Z Z
1 2
J(v) = kvh k dx f vh dx = E(vh ) , (3.10)
2
ove si e introdotto, sullo spazio V degli spostamenti ammissibili, il funzionale
Z Z
1
E : V R, E(v) = kvk2 dx f v dx .
2
esprime quindi la proprieta che la soluzione uh del problema variazionale discreto (2.49) e la
configurazione che minimizza lenergia totale della membrana tra tutte le configurazioni discrete
ammissibili.
Similmente, si puo verificare che la soluzione u V del problema variazionale esatto (2.37) e
caratterizzata dalla condizione
E(u) = min E(v) ,
vV
che esprime quindi il Principio di Minimo dellEnergia Totale: la membrana assume allequilibrio
la configurazione che rende minima lenergia totale del sistema. Tale Principio e del tutto
equivalente al Principio dei Lavori Virtuali.
xk+1 = xk + k pk , (3.12)
rk
1 J(xk )
xk
k pk
0
xk+1
pk
0 1 2 3 4 5
4
xk
3 k rk
2
xk+2 xk+1
rk+1 xk+3
1
rk+2
0
rk
1
1 0 1 2 3 4 5
pk = rk (= J(xk )) , (3.18)
vale a dire nel muoversi nella direzione di massima discesa locale (steepest descent). In base alla
(3.16), si ha
(rk+1 )T rk = 0 , (3.19)
ossia i gradienti sono a due a due ortogonali (si veda la Figura 3.4).
Lalgoritmo del gradiente e dunque:
x0 arbitrario
r0 = b Ax0
Per k = 0, 1, . . . fino a convergenza
zk = Ark
(3.20)
(rk )T rk
k = k T k
(r ) z
xk+1 = xk + k rk
rk+1 = rk k zk
Si noti che ad ogni iterazione si esegue un solo prodotto matrice-vettore (per il calcolo di zk ).
Esso costituisce la parte piu costosa dellalgoritmo, richiedendo fino a mn operazioni (ricordia-
mo che m indica il massimo numero di elementi non nulli in una riga di A). Gli altri passi
dellalgoritmo (calcolo di prodotti scalari e aggiornamento di vettori) richiedono un numero di
operazioni dellordine di n.
66 CAPITOLO 3. METODI ITERATIVI PER LA RISOLUZIONE DI SISTEMI LINEARI
max
dove cond2 (A) = 1 indica il numero di condizionamento di A nella norma euclidea. Si
min
noti che la quantita
cond2 (A) 1 2
=1 <1
cond2 (A) + 1 cond2 (A) + 1
e tanto piu vicina a 1 quanto cond2 (A) e grande; dunque, la convergenza della successione {xk }
e tanto piu lenta quanto la matrice A e malcondizionata. E facile stimare il numero massimo di
iterazioni necessarie a ridurre lerrore relativo, nella norma dellenergia, di una quantita > 0.
Infatti, tenuto conto della (3.21), imponiamo che
k
kxk xkA cond2 (A) 1
<;
kx0 xkA cond2 (A) + 1
passando ai logaritmi, si ha
2
k log 1 < log ,
cond2 (A) + 1
da cui
log
k> . (3.22)
log 1 cond22(A)+1
e dunque
1
k >
2 | log | cond2 (A) . (3.23)
Se ne conclude che il numero di iterazioni necessarie a portare lerrore relativo al di sotto di una
soglia e stimabile in modo proporzionale tanto al modulo del logaritmo di quanto al numero
di condizionamento di A.
In pratica, per arrestare lalgoritmo, si impone una condizione del tipo krk k/kr0 k < tol oppure
kxk xk/kxk k < tol, dove la norma e quella euclidea e tol rappresenta una tolleranza relativa.
Nel caso di matrici malcondizionate, e preferibile imporre entrambe le condizioni nel test di
arresto, vale a dire
krk k kxk xk
< tol1 , < tol2 .
kr0 k kxk k
3.3. IL METODO DEL GRADIENTE CONIUGATO 67
(pk )T Ap = 0 .
ossia poniamo
(pk )T Ark
k+1 = . (3.24)
(pk )T Apk
Si noti che, se n 3, in generale la direzione cos definita non ci permettera di giungere in x in
un solo passo; infatti, non e detto che tale punto appartenga alla retta xk+1 + pk+1 . Tuttavia,
essa ci consente di avvicinarci al punto di minimo globale x meglio di quanto non faccia la scelta
pk+1 = rk+1 . Infatti, si puo dimostrare che il punto xk+2 , ottenuto minimizzando J lungo la
retta xk+1 + pk+1 , risulta essere il minimo del funzionale anche su tutto il piano formato dai
vettori xk+1 + pk+1 + rk+1 , al variare di e in R (si veda la Figura 3.5).
E rimarchevole il fatto che, pur defininendo pk+1 attraverso la condizione che sia A-ortogonale
alla direzione precedente pk , esso risulta A-ortogonale a tutte le direzioni di discesa precedenti;
in altri termini, si dimostra che
(rj )T rk = 0 , j, k 0 , j 6= k . (3.26)
Mediante tali proprieta, si puo ottenere una espressione per k+1 equivalente alla (3.24) ma
computazionalmente preferibile, vale a dire
(rk+1 )T rk+1
k+1 = . (3.27)
(rk )T rk
68 CAPITOLO 3. METODI ITERATIVI PER LA RISOLUZIONE DI SISTEMI LINEARI
4
xk
2
rk+1 xk+1
1
pk+1 xk+2
pk
0
1 0 1 2 3 4 5
Figura 3.5: Un passo del metodo del gradiente coniugato. I vettori pk e pk+1 sono A-coniugati
I metodi del gradiente e del gradiente coniugato fanno parte dei cosiddetti metodi di Krylov.
Fissato x0 arbitrario e posto r0 = b Ax0 , indichiamo con
lo spazio vettoriale, detto spazio di Krylov, generato dal residuo iniziale r0 e dalle successive
potenze di A applicate a tale vettore. Un metodo iterativo e detto di Krylov se la successione
{xk } da esso generata e tale che
Non e difficile verificare che le successioni generate dai metodi del gradiente e del gradiente
coniugato soddisfano tale condizione. Nel caso del metodo del gradiente coniugato, ciascuna
iterata xk , che - ricordiamo - e definita da un processo di minimizzazione del funzionale J lungo
una retta, risulta in realta punto di minimo vincolato di J relativo a una varieta di dimensione
k; precisamente, si puo dimostrare che
Procedendo come per il metodo del gradiente, qualora cond2 (A) >> 1, si stima il numero di
k xk
iterazioni necessarie per avere kx
kx0 xkA
A
< in
1 p
k >
2 | log | cond2 (A) . (3.30)
Dal confronto con la (3.23) appare evidente il guadagno rispetto al metodo del gradiente.
Sono stati quindi proposti metodi alternativi, molti dei quali rientrano nella classe dei metodi
di Krylov. Essi definiscono xk+1 a partire da xk ancora nella forma
xk+1 = xk + k pk ,
3.5 Il precondizionamento
Lanalisi di convergenza di tutti i metodi iterativi precedentemente considerati mette in evidenza
il ruolo cruciale del numero di condizionamento della matrice A. Le matrici generate dalla
discretizzazione di modelli differenziali hanno in genere un numero di condizionamento che cresce
in modo inversamente proporzionale ad una potenza del parametro di griglia h, cioe cond2 (A)
ch per un certo > 0; la (1.34) e un esempio di tale comportamento. (Nel caso di griglie
fortemente disuniformi, la situazione e ancora peggiore perche il ruolo di h nella stima precedente
e svolto dal piu piccolo parametro di griglia hmin .)
Per ovviare a questo inconveniente, possiamo sostituire al sistema (3.1) il sistema equivalente
P1 Ax = P1 b , (3.32)
dove P e una matrice non singolare avente le seguenti proprieta: (i) cond2 (P1 A) << cond2 (A),
(ii) gli elementi di P sono calcolabili in modo poco costoso, (iii) un prodotto matrice-vettore
y = P1 v, o equivalentemente la risoluzione di un sistema lineare Py = v puo essere effettuato
ad un costo confrontabile con quello del calcolo di y = Av. Una matrice avente queste proprieta
dicesi matrice di precondizionamento per A. Ovviamente, la matrice che realizza in modo
ottimale la condizione (i) e ... la matrice P = A, per la quale si ha cond2 (P1 A) = cond2 (I) = 1 !
Ma A non soddisfa le condizioni (ii) e (iii). Tuttavia losservazione suggerisce di cercare P come
una opportuna approssimazione della matrice A.
Una strategia che porta ad una matrice di precondizionamento sovente efficace consiste nel
costruire una fattorizzazione incompleta della matrice A. Illustriamo lidea nel caso particolare
ma significativo in cui A sia una matrice simmetrica e definita positiva, e molto sparsa. Essa
ammette allora la fattorizzazione di Choleski A = CCT , con C triangolare inferiore ad elementi
diagonali strettamente positivi, ma non piu sparsa a causa del fenomeno del fill-in. E possibile
pero costruire facilmente una matrice sparsa C ancora triangolare inferiore e ad elementi dia-
gonali strettamente positivi, con le seguenti proprieta: gli elementi diversi da 0 sono soltanto
quelli aventi gli stessi indici degli elementi diversi da 0 nella parte triangolare inferiore di A;
3.5. IL PRECONDIZIONAMENTO 71
Tabella 3.1: Costo di vari metodi iterativi in funzione dei parametri di griglia
3.5.1 Applicazione al caso delle matrici delle differenze finite e degli elementi
finiti
Consideriamo la matrice A generata dalla discretizzazione alle differenze finite centrate del-
lequazione di Poisson in due dimensioni, e definita in (2.25). La piu semplice fattorizzazione
incompleta di Choleski consiste nel costruire il fattore triangolare inferiore C, avente elementi cjk
diversi da zero soltanto sulla diagonale principale (k = j) e sulle due sottodiagonali definite dalle
relazioni k = j 1 e k = j N . Tali elementi sono univocamente determinati dalle equazioni
N 2 k
X X
cjr ckr = cjr ckr = ajk , 1 j N 2, k = j, j 1, j N ,
r=1 r=1
che sono in numero pari agli elementi incogniti (si noti che nella seconda somma si e tenuto
conto del fatto che ckr = 0 se r > k). Una variante, piu P efficiente, consiste nel determinare
gli elementi diagonali di C non attraverso le condizioni jr=1 c2jr = ajj , ma chiedendo che la
somma degli elementi in ciascuna riga del prodotto CC T coincida con la somma degli elementi
sulla corrispondente riga di A (row-sum condition).
E possibile dimostrare che con ognuna di queste scelte si ha cond2 (P 1 A) = O(h1 ) = O(N ),
in luogo di cond2 (A) = O(h2 ) = O(N 2 ) secondo la (2.25).
Tenendo conto delle stime (3.23) e (3.30), possiamo allora quantificare nella Tabella 3.1 il
costo della risoluzione di un sistema lineare Au = f in funzione dei parametri di griglia, in
termini di numero di iterazioni (Iter) necessarie a ridurre lerrore relativo al di sotto di una
soglia .
Risultati del tutto analoghi si hanno per la matrice A generata dalla discretizzazione agli
elementi finiti lineari dello stesso problema (si veda la (2.50)), quando la triangolazione sia
quasi-uniforme, vale a dire composta da elementi aventi ciascuno diametro dellordine di h.
Capitolo 4
Fino ad ora, abbiamo considerato le posizioni di equilibrio statico di un filo elastico o di una
membrana elastica. Estendiamo ora i modelli al caso in cui si considerino anche variazioni in
tempo del corpo elastico, per effetto di una sollecitazione iniziale oppure di una forzante variabile
nel tempo.
Consideriamo il caso della membrana, lasciando al lettore le ovvie semplificazioni nel caso del
filo; facciamo riferimento alle notazioni della Sez. 2.1. Indichiamo dunque con u = u(x, t) lo
spostamento verticale (supposto piccolo) della membrana nel punto x = (x, y) al tempo
2u
t, e notiamo che la quantita rappresenta laccelerazione della membrana nella direzione
t2
verticale. Sia poi = (x) la densita superficiale di massa della membrana, e f = f (x, t) la
densita superficiale di forza applicata dallesterno al tempo t. Applicando la legge di Newton,
otteniamo, in luogo della prima delle (2.6), la seguente relazione valida ad ogni istante temporale
t:
2u
f + = 2 in ; (4.1)
t
sostituendo lespressione di fornita dalla legge di Hooke in tale equazione, otteniamo
2u
(u) = f in . (4.2)
t2
Tale equazione prende il nome di equazione delle onde. Ad essa vanno aggiunte le condizioni al
bordo; supponendo ad esempio che la membrana resti fissato al bordo ad ogni istante temporale
t, abbiamo
u(x, t) = 0 su . (4.3)
Inoltre, sono necessarie condizioni che descrivano il tipo di moto della membrana. Consideremo
a tale proposito due situazioni:
Moto periodico libero. Sia f identicamente nulla, e cerchiamo u come prodotto di una
funzione periodica della sola variabile t per una funzione della sola variabila x, nulla al
bordo. In altri termini, eseguiamo una separazione delle variabili di tempo e di spazio,
scrivendo u o in forma complessa come
u(x, t) = eit w(x) , (4.4)
dove i indica lunita immaginaria, /2 rappresenta una frequenza di pulsazione e w e una
variabile complessa, oppure in forma reale come
u(x, t) = cos(t + )w(x) , (4.5)
73
74 CAPITOLO 4. MODELLI DINAMICI DI CORPI ELASTICI
dove rappresenta una fase e w e una variabile reale. In entrambi i casi, u e una fun-
zione periodica in tempo di periodo 2/; sostituendo la sua espressione nella (4.2) e
semplificando il fattore comune dipendente da t, otteniamo lequazione
2 w (w) = 0 in (4.6)
Lo studio di tale problema costituisce lanalisi modale o spettrale della membrana elastica.
Moto dipendente dalle condizioni iniziali e da una forzante. Supponiamo che ad un certo
istante temporale, che per semplicita scegliamo come t = 0, si conosca per ogni x
tanto la posizione della membrana, ossia lo spostamento u(x, 0) = u0 (x), quanto la sua
u
velocita, rappresentata dalla funzione (x, 0) = v0 (x). Allora, nota la forzante f (x, t)
t
per tutti i tempi t [0, T ], dove T > 0 rappresenta il tempo finale di osservazione, lo
spostamento u per t [0, T ] e univocamente determinato risolvendo il problema ai valori
iniziali e al bordo
2
u
2 (u) = f in , 0<tT ,
t
u=0 su , 0 < t T, (4.8)
u = u0 , u = v0
in , t=0.
t
Si noti che il numero (due) di condizioni iniziali sulla incognita u e determinato dallordine
di derivazione in tempo nella legge di Newton, rappresentata dalla prima delle (4.8).
PN
funzioni di base, soddisfacenti le relazioni (2.45). Scrivendo wh = k=1 wk k e scegliendo
vh = j , si ha
Z XN Z
wh j dx = wk k j dx .
k=1
La matrice di massa, che indicheremo con B (segnaliamo che nella letteratura ingegneristica
essa viene sovente indicata con M ), e dunque definita da
Z
N N
B = (bjk ) R , con bjk = k j dx . (4.9)
Identica e pure la modalita di costruzione, basata sul calcolo delle matrici di massa dei singoli
elementi e sul successivo assemblaggio.
Adottando le stesse notazioni della Sez. 2.3.6, siano
Z
(T )
b, = dx
T
gli elementi della matrice di massa B (T ) R33 dellelemento T T . Possiamo supporre che la
densita sia costante = T in T , altrimenti la approssimiamo con il suo valor medio su T
Z
1
T = dx ,
area(T ) T
oppure con il suo valore T = (xb ) nel baricentro del triangolo. In ogni caso, poniamo
Z
(T )
b, = T dx . (4.11)
T
Si ha allora
1 1 1
6 12 12
B (T ) = T area(T ) 1
12
1
6
1
12 . (4.12)
1 1 1
12 12 6
Per giustificare questo risultato, possiamo procedere in questo modo. Consideriamo dapprima
il triangolo di riferimento T di vertici x1 = (1, 0), x2 = (0, 1) e x3 = (0, 0). Indichiamo con
x = (x, y) il generico punto in T . Le funzioni di base su tale triangolo sono date da
grazie alla (2.59). Ricordando che il volume di una piramide e dato da 13 area(base) altezza, si
ha subito Z
1
dx = area(T ) ,
T 3
coerentemente e (T ) da B (T ) e quello di calcolare
R con la (4.16). Un modo equivalente per ottenere B
gli integrali T dx che compaiono nella (4.11) in maniera approssimata usando la formula
dei trapezi (2.63). Tenendo conto dei valori delle funzioni di base nei nodi, si ha
Z (
1
area(T ) , se = ,
dx = 3
T 0 se 6= ,
4.2. ANALISI MODALE 77
che corrisponde nuovamente alla (4.16). Se invece T contiene nodi non portatori di incognita
(cioe nodi di bordo su cui e imposta una condizione di Dirichlet), allora e necessario dapprima
cancellare dalla matrice (4.12) le righe e le colonne corrispondenti a tali nodi, e poi procedere
con la somma degli elementi su ciascuna riga rimanente. In pratica, se un solo nodo non porta
una incognita, Be (T ) sara data dalla matrice 2 2
e (T ) = T area(T ) 1 I ,
B
4
(T )
e
mentre se sono due i nodi a non portare unincongnita, B si ridurra allo scalare
e (T ) = T area(T ) 1 .
B
6
Tali matrici concentrate locali intervengono nellassemblaggio della matrice concentrata globale.
Per comodita del lettore, concludiamo questo paragrafo riportando le matrici di massa globali
(esatte e concentrate) nel caso monodimensionale, supponendo che la densita sia costante
nellintervallo [0, L] e che la partizione dellintervallo sia fatta con passo costante h = L/(N + 1).
Se si impongono condizioni di Dirichlet su entrambi gli estremi, gia sappiamo che la matrice di
massa e una matrice N N avente la struttura (si veda la (1.94))
1 2 1
B = h tridiag 6 3 6 . (4.17)
Le varianti nel caso di combinazione di una condizione di Dirichlet e una di Neumann sono ovvie.
Le autosoluzioni di tale problema sono note in forma analitica. Consideriamo infatti lanalogo
problema monodimensionale
2
d w = w in (0, L) ,
dx2 (4.22)
w(0) = w(L) = 0 ,
che descrive le vibrazioni libere di un filo elastico fissato agli estremi; tale problema e stato gia
trattato in (1.29), limitatamente al caso = 1. Le autosoluzioni (p , wp ) di (4.22) sono date da
2 2
p = p , wp (x) = C sin p x , p = 1, 2, . . . (4.23)
L2 L
2 2
Ora, ricordando lespressione = x2
+ y 2
delloperatore di Laplace, e facile verificare che le
coppie (pq , wpq ), con
sono autosoluzioni del problema (4.21), e si puo dimostrare che non vi sono altre autosoluzioni.
In altre parole, ogni autofunzione del problema bidimensionale e il prodotto di due qualunque
autofunzioni del problema monodimensionale, luna espressa nella variabile x, laltra nella va-
riabile y (questa operazione prende il nome di prodotto tensoriale); lautovalore e la somma
dei corrispondenti autovalori. Tale struttura particolare dipende dal fatto che il dominio e un
prodotto cartesiano di intervalli ed i coefficienti dellequazione sono costanti.
Una struttura del tutto analoga si ritrova a livello algebrico, se si discretizza il problema
mediante differenze finite centrate su una griglia equispaziata. Facciamo qui riferimento alle
notazioni della Sez. 2.2. Ponendo wm w(x , ym ) e h , la discretizzazione del problema
(4.21) e data da
(w,m1 w1,m + 4wm w+1,m w,m+1 ) = h wm , 1 , m N . (4.25)
h2
In termini matriciali, cio si esprime come
Aw = h w , (4.26)
gli autovalori e gli autovettori del problema discreto monodimensionale (si vedano le (1.31)-
(1.32)), si ha ancora che le autosoluzioni (h,pq , w pq ) del problema (4.26) sono espresse da
h,pq = h,p + h,q e wpq = (wp ) (w q )m 1,mN
, p, q = 1, . . . , N (4.28)
(avendo per comodita usato la notazione a due indici, anziche quella lessicografica, per le
componenti degli autovettori w pq ).
Ricordando la (1.33), possiamo in particolare stimare gli autovalori minimo h,11 e massimo
h,N N di A; precisamente, si ha
2 2 8 1
h,11 = 11 e h,N N . (4.29)
L2 h2
4L2 2
cond2 (A) h , (4.30)
2
Il fatto che gli autovalori siano reali e le autofunzioni siano a valori reali e conseguenza del
carattere simmetrico del problema (gli integrali dipendono in modo simmetrico da w e v). E
possibile dimostrare che il problema ammette una successione {(n , wn )}n1 di autosoluzioni;
gli autovalori sono strettamente positivi e formano una successione crescente e tendente a +
per n +, mentre le autofunzioni sono a due a due -ortogonali, ossia soddisfano
Z
wn wm dx = 0 se n 6= m .
Tale problema
P viene espresso in forma algebrica, rappresentando wh nella base di Lagrange come
wh = N k=1 wk k e scegliendo vh = j , j = 1, . . . , N , come funzioni test. Si ottiene
N
X Z N
X Z
wk k j dx = h wk k j dx , 1jN .
k=1 k=1
Aw = h Bw , (4.33)
wT Aw
h = >0,
w T Bw
essendo w 6= 0. Una espressione equivalente e data da
Z
kwh k2 dx
Z
h = ,
2
wh dx
B 1 Aw = h w . (4.34)
Anzi, essendo A e B simmetriche e definite positive, esso e equivalente a un problema del tipo
Cz = h z , (4.35)
dove min indica lautovalore minimo del problema (4.31) (associato alla minima frequenza di
vibrazione della membrana). La prima delle relazioni precedenti e conseguenza della doppia
4.3. PROBLEMI EVOLUTIVI 81
disuguaglianza 0 < h,min min c h2 , che dice che lautovalore minimo del problema discre-
tizzato fornisce sempre una approssimazione per eccesso dellautovalore minimo del problema
esatto, e che lerrore tra le due quantita tende a 0 quadraticamente con h. Notiamo infine che
la (4.36) mostra che il numero di condizionamento nella norma euclidea della matrice C che
compare in (4.35) soddisfa
cond2 (C) C h2 , (4.37)
Si noti che ciascun integrale e funzione del tempo t, attraverso u oppure f ; invece, le funzioni test
v sono indipendenti dal tempo. Le condizioni iniziali, date dalla terza delle (4.8), si esprimono
come
u
u(0) = u0 , (0) = v0 . (4.39)
t
R RT R
Supponiamo che u0 V , che v0 soddisfi v02 dx < + e che f soddisfi 0 f 2 dx dt < +.
Sotto tali ipotesi, si puo dimostrare che esiste una e una soluzione del problema (4.38)-(4.39).
82 CAPITOLO 4. MODELLI DINAMICI DI CORPI ELASTICI
ossia e una combinazione lineare delle funzioni di base di Vh , i cui coefficienti sono funzioni
incognite del tempo. Si realizza in tal modo una separazione delle variabili di spazio e di tempo.
Le derivate parziali di uh rispetto al tempo danno luogo a derivate ordinarie dei suoi coefficienti
rispetto a tali variabili. Precisamente, si ha
X dukN N
X d2 uk
uh 2 uh
(x, t) = (t)k (x) , (x, t) = (t)k (x) ,
t dt t2 dt2
k=1 k=1
uh 2 uh
dunque in particolare t e t2
appartengono ancora a Vh , per ogni t. Per brevita, scriveremo
duk d2 uk
uk , oppure uk , in luogo di
dt ; similmente uk , oppure uk , indichera dt2 .
Per t = 0, le condizioni iniziali (4.39) suggeriscono di porre
N
X
uh (0) = uh,0 = u0k k con u0k = u0 (xk ) , (4.42)
k=1
e
X N
uh
(0) = vh,0 = v0k k con v0k = v0 (xk ) (4.43)
t
k=1
(supponendo ora che u0 e v0 siano funzioni continue in ). In altri termini, le condizioni iniziali su
u forniscono le condizioni iniziali a cui devono sottostare le funzioni incognite uk (t), 1 k N ,
che definiscono uh in base alla (4.41). Si ha infatti
Per tradurre le equazioni (4.40) in termini algebrici, scegliamo come vh le funzioni di base j ,
ottenendo, per 0 < t T ,
Z Z Z
2 uh
j dx + uh j dx = f j dx , 1jN . (4.45)
t2
4.3. PROBLEMI EVOLUTIVI 83
Osserviamo che
Z N
X Z N
X
2 uh
j dx = uk k j dx = bjk uk ,
t2
k=1 k=1
dove bjk sono gli elementi della matrice di massa B introdotta in (4.9). Inoltre, come nel caso
stazionario, si ha
Z XN
uh j dx = ajk uk ,
k=1
con ajk elementi della matrice di rigidezza A definita in (2.51). Infine, poniamo
Z
fj (t) = f (x, t)j (x) dx , 1jN . (4.46)
Bu + Au = f , 0<tT ; (4.47)
tenendo conto che B e invertibile, esso e un sistema differenziale lineare del secondo ordine di N
equazioni nelle N incognite uk (t), 1 k N . Le condizioni iniziali sono espresse dalle (4.44),
che si scrivono come u(0) = u0 e u (0) = v 0 , avendo posto u0 = (u0k )1kN e v 0 = (v0k )1kN .
Dobbiamo quindi risolvere un problema ai valori iniziali, o problema di Cauchy, per il sistema
(4.47). Scriviamo tale problema in forma compatta come
Bu + Au = f , 0<tT ,
(4.48)
u(0) = u0 , u (0) = v 0 .
uk+1 2uk + uk1 = t2 (F (uk+1 , tk+1 ) + (1 2)F (uk , tk ) + F (uk1 , tk1 )) , (4.49)
Per ogni valore di fissato, il metodo e del primo ordine. Tuttavia, se si sceglie proporzionale
a t, si ottiene ancora un metodo del secondo ordine, con proprieta migliori rispetto alla scelta
= 0.
Capitolo 5
Modelli di diffusione
dove indica appunto il flusso di calore e n, come sempre, la normale a orientata verso
lesterno.
Un modello un poco piu complicato contempla la possibilita di un apporto (positivo o negativo)
di calore ad in forma distribuita su tutta la superficie, ad esempio attraverso un irraggiamento.
In tal caso la (5.1) diventa
Z Z Z
d
c u dx = n ds + q dx , (5.2)
dt
dove la funzione q = q(x, t) rappresenta lapporto distribuito di calore per unita di massa e
di superficie, che supponiamo noto. Osservando che , e c sono indipendenti dal tempo, ed
applicando (formalmente) il teorema della divergenza possiamo scrivere la relazione precedente
come Z Z Z
u
c dx = dx + q dx .
t
85
86 CAPITOLO 5. MODELLI DI DIFFUSIONE
u
c = + q (5.3)
t
= u , (5.4)
dove = (x) > 0 e il coefficiente di conducibilita termica del corpo nel punto x. Sostituendo
tale relazione nella (5.3), otteniamo lequazione del calore
u
c (u) = q . (5.5)
t
u(x, 0) = u0 (x) , x,
che fissa la temperatura del corpo allistante t = 0 (scelto come istante iniziale di osservazione),
e una condizione in ogni punto del bordo ad ogni tempo t > 0. Precisamente, come nella
Sez. 2.3.8, supponiamo che il bordo sia suddiviso in due parti disgiunte, D e N ; su
D assegniamo un valore g = g(x, t) della temperatura, mentre su N assegniamo un valore
= (x, t) al flusso normale
u
= u n = n .
n
In conclusione, indicando con T > 0 il tempo finale di osservazione, la temperatura del corpo
e determinata dal seguente problema ai valori iniziali e al bordo
u
c (u) = q in , 0<tT ,
t
u = g su D , 0 < t T ,
(5.6)
u
= su N 0<tT ,
n
u = u0 in , t=0.
u
= (u u) (5.7)
n
gia considerata in (2.73), dove e un coefficiente positivo mentre u e una temperatura nota.
Un analogo modello, in cui compare una sola variabile di spazio x e il simbolo e sostituito
dalla derivata parziale /x, descrive levoluzione della temperatura u = u(x, t) in una sbarra
metallica.
5.1. IL MODELLI TERMICO PER LA SBARRA E LA PIASTRA 87
Si noti che nel caso stazionario, cioe quando la temperatura u e indipendente dal tempo in quanto
il corpo e in equilibrio termico, si ha ut 0 e dunque u e soluzione del problema ai valori al
bordo (2.8), a cui nel Cap. 2 siano pervenuti considerando un fenomeno fisico completamente
diverso. (E questo un esempio della trasversalita della Matematica rispetto a contesti applicativi
diversi.) Si notino inoltre le analogie e le differenze con il problema di evoluzione (4.8).
Seguiamo dora in avanti un procedimento analogo a quello usato nella Sez. 4.3.1 per discre-
tizzare in spazio il problema (4.8).
Detto V lo spazio delle temperature ammissibili, la formulazione integrale del problema
costituito dalla prima e dalla seconda delle equazioni (5.8) e la seguente: per ogni t con 0 < t T ,
u(t) V e soddisfa
Z Z Z (5.9)
u
v dx + u v dx = f v dx per ogni v V .
t
u(0) = u0 . (5.10)
R RT R
Se supponiamo che u0 soddisfi u20 dx < + e che f soddisfi 0 f 2 dx dt < +, si puo
dimostrare che esiste una e una soluzione del problema (5.9)-(5.10).
La formulazione variazionale discreta e ottenuta dalla (5.9), restringendo come al solito a Vh
lo spazio degli spostamenti ammissibili. Essa e dunque la seguente: per ogni t, con 0 < t T ,
uh (t) Vh e soddisfa
Z Z Z (5.11)
uh
vh dx + uh vh dx = f vh dx per ogni vh Vh .
t
Rappresentiamo poi uh (t) Vh nella forma (4.41), con uh (0) dato dalla (4.42). Poniamo u :
[0, T ] RN definita da u(t) = (uk (t))1kN , u0 = (u0k )1kN e f : [0, T ] RN definita da
f (t) = (fj (t))1jN , con fj (t) date dalla (4.46). Indichiamo come sempre con A la matrice di
rigidezza (2.51) e con B la matrice di massa (4.9). Giungiamo quindi al seguente problema ai
valori iniziali, o problema di Cauchy,
Bu + Au = f , 0<tT ,
(5.13)
u(0) = u0 .
ossia
(B + tA)uk+1 = Buk + tf (tk+1 ) , k0. (5.19)
In tal caso, si deve risolvere un sistema lineare a ogni iterazione, con matrice B+tA simmetrica
e definita positiva. Se si tiene costante il passo t e si usa un metodo di risoluzione diretto del
sistema lineare, e conveniente fattorizzare la matrice (ad esempio calcolando la fattorizzazione di
Choleski, vedi Cap. 3) una volta per tutte allinizio: ad ogni passo temporale si dovra soltanto
eseguire una sostituzione in avanti e allindietro. Se invece si usa un metodo iterativo, quale il
Gradiente Coniugato, la soluzione uk al passo precedente fornira il valore iniziale della nuova
iterazione.
Il metodo dei trapezi (o di Crank-Nicolson) (7.37) fornisce, per il nostro problema, lo schema
t k+1 t k t
(B + 2 A)u = (B 2 A)u + 2 ( f (tk ) + f (tk+1 ) ) , k0. (5.20)
Pertanto, con un lieve incremento nel costo del calcolo del secondo membro rispetto al metodo
di Eulero implicito, si ha un netto guadagno in termini di precisione, in quanto lordine del
metodo passa da uno a due. Tanto il metodo di Eulero implicito quanto quello di Crank-
Nicolson, quanto ancora i metodi BDF citati nella Sez. 7.6.3, non pongono restrizioni alla scelta
del passo temporale, essendo incondizionatamente asintoticamente stabili. In particolare, essi
permettono di simulare efficacemente la convergenza verso uno stato stazionario di equilibrio
termico, attraverso la scelta dinamica del passo temporale (si ricordi lEsempio 7.6.3).
e 1/2
1 X
ku(tk ) ukh k2E C1 h + C2 tp , (5.22)
K
1kK
dove le costanti C1 e C2 dipendono dalle derivate parziali di u sopra citate. In altri termini,
riducendo i parametri h e t della discretizzazione, ci aspettiamo che lerrore tenda a zero
linearmente in h e come la potenza p-esima in t.
um = um (t) u(x , ym , t)
um,0 = u0 (x , ym )
la temperatura iniziale,
m = (x , ym )
la densita, ed infine
fm = fm (t) = f (x , ym , t)
il termine noto al tempo t, calcolati nel nodo (x , ym ).
Ricordando la (2.14), la discretizzazione in spazio della (5.23) in ciascun nodo interno e data
da
m um + (u,m1 u1,m + 4um u+1,m u,m+1 ) = fm , 1 , m N , 0<tT .
h2
(5.24)
Nei nodi di bordo imponiamo le condizioni
Come nel caso stazionario, eliminiamo i nodi di bordo e raccogliamo le incognite interne,
numerate in modo lessicografico, nel vettore
u = u(t) = uk (t) 1kN 2 .
Sia B la matrice diagonale che raccoglie i valori della densita nei nodi, ossia
B = diag (1 , . . . , k , . . . , N 2 ) ;
notiamo che nel caso di densita costante , si ha B = I. Detta A la matrice definita dalla
(2.25), le equazioni (5.24)-(5.25) danno luogo al sistema di equazioni differenziali ordinarie
Bu + Au = f , 0<tT ,
u(0) = u0 ,
Ci siamo dunque ricondotti alla (5.14). Tutte le considerazioni fatte nella sezione precedente
valgono inalterate; ricordiamo infatti che gli autovalori della matrice A soddisfano le relazioni
(4.29), dunque in particolare vale la condizione di stabilita asintotica (5.17) per il metodo di
Eulero esplicito.
I tre metodi discussi nella sezione precedente assumono ora la presente forma:
Eulero esplicito:
uk+1 = (I tB 1 A)uk + tB 1 f (tk ) , k0; (5.27)
Eulero implicito:
(B + tA)uk+1 = uk + tf (tk+1 ) , k0; (5.28)
Crank-Nicolson:
t k+1 t k t
(B + 2 A)u = (B 2 A)u + 2 ( f (tk ) + f (tk+1 ) ) , k0. (5.29)
Si noti che nel caso di Eulero esplicito, abbiamo esplicitamente invertito la matrice B, essendo
questa diagonale.
t 7 u(x(t, x0 ), t)
descrive levoluzione nel tempo della temperatura della particella che al tempo t0 transita in x0 .
Poniamo allora
Du d
(x0 , t0 ) = u(x(t, x0 ), t) .
Dt dt t=t0
Applicando la regola di derivazione di una funzione composta (regola della catena), abbiamo
Du d u
(x0 , t0 ) = u(x(t, x0 ), t) x(t, x0 ) + (x(t, x0 ), t) ,
Dt dt t t=t0
= in car out ,
dove, indicato come duso con n = n(x) il versore normale a orientato verso lesterno di ,
si pone:
(Si veda la Fig. 5.1 per un semplice ma significativo esempio.) Si noti che, siccome a puo
dipendere dal tempo, tale suddivisione di puo anchessa variare nel tempo.
E ragionevole supporre di conoscere la temperatura del fluido che entra in , ossia imporre
la condizione di Dirichlet
u=g su in , 0 < t T .
5.2. IL MODELLO DI CONVEZIONE-DIFFUSIONE TERMICA
replacemen 93
car n
a
n a n a
in out
car a
n
Figura 5.1: Suddivisione del bordo di un dominio occupato da un fluido in bordo di ingresso
in , bordo caratteristico car e bordo di uscita out
In uscita, la temperatura del fluido e in genere incognita, mentre e ragionevole fare ipotesi sul
flusso di calore uscente; ad esempio, imponendo la condizione di Neumann
u
=0 su out , 0<tT ,
n
si suppone che ivi il flusso di calore uscente
u
n = (a n) c u
n
valga n = (a n) c u, cioe sia tutto di natura convettiva. Infine, su car si puo assegnare il
valore della temperatura (se la parete e un termostato), oppure il flusso di calore (se ad esempio
la parete e termicamente isolata).
Osservazione 5.2.1 Lequazione (5.32) descrive anche levoluzione temporale di una massa di-
spersa in un fluido; ad esempio, u puo rappresentare la concentrazione di un inquinante disciolto
in un liquido. In questo caso, lequazione viene anche detta di diffusione-trasporto. In generale,
la (5.32) descrive levoluzione di uno scalare passivo u (passivo in quanto non influenza il moto
del fluido, ossia il campo di velocita a non dipende da u).
Il numero di Peclet
Come dice il nome stesso, lequazione (5.32) modellizza la compresenza di due fenomeni fisici,
la convezione del calore lungo le linee di corrente e la sua diffusione per interazione molecolare.
Il peso relativo dei due fenomeni e descritto dal numero di Peclet
AL
Pe = 0,
2
dove A = max kak e il massimo modulo della velocita, mentre L e una lunghezza caratteristica
(ad esempio il diametro di ).
Se Pe e dellordine di 1, convezione e diffusione hanno pari importanza. Se Pe << 1, gli effetti
diffusivi prevalgono su quelli convettivi (in particolare, se Pe = 0, cioe a = 0 identicamente, si
94 CAPITOLO 5. MODELLI DI DIFFUSIONE
ha soltanto diffusione, cioe si ritrova lequazione del calore). Se invece Pe >> 1, e la convezione
a prevalere; il caso limite Pe = +, cioe = 0, corrisponde alla sola equazione di convezione
u
+ a u = f , (5.33)
t
che sara oggetto di studio nel Capitolo 6.
E importante tenere presente che da un punto di vista matematico lequazione di convezione-
diffusione e sempre di natura parabolica, per ogni valore di Pe [0, +); cio implica, in parti-
colare, che oltre alla condizione iniziale vada imposta una condizione al bordo su tutto . Al
contrario, lequazione limite (5.33) viene definita di tipo iperbolico e richiede lassegnazione di
una condizione al bordo solo laddove il fluido entra in , ossia su in .
Per Pe >> 1, la soluzione delequazione di convezione-diffusione tende a comportarsi, nella
maggior parte del dominio, come la soluzione dellequazione di convezione pura (5.33); dove
cio non avviene, si hanno strati limiti o strati interni termici, ossia repentine variazioni della
temperatura. Ad esempio, uno strato limite puo nascere a ridosso di car oppure di out , quando
la temperatura trasportata lungo le linee di corrente interne e obbligata bruscamente a soddisfare
le condizioni al bordo ivi imposte dalla natura parabolica dellequazione di convezione-diffusione.
a1 (xm ) a2 (xm )
um + (u+1,m u1,m ) + (u,m+1 u,m1 ) (5.34)
2h 2h
+ 2 (u,m1 u1,m + 4um u+1,m u,m+1 ) (5.35)
h
= fm , 1 , m N , 0 < t T . (5.36)
Passando ad esaminare il metodo degli elementi finiti lineari, la formulazione integrale discreta
dellequazione di convezione-diffusione, analoga alla (5.11), e
uh (t) Vh e soddisfa
Z Z Z Z
uh
vh dx + (a uh ) vh dx + uh vh dx = f vh dx per ogni vh Vh .
t
(5.37)
La corrispondente matrice di rigidezza A si decompone in
A=C+D ,
R
dove D = (djk ) con djk = k j dx indica ora la ormai familiare matrice simmetrica e
definita positiva che descrive la diffusione, mentre
Z
C = (cjk ) , con cjk = (a k ) j dx , (5.38)
e la matrice che descrive la convezione; essa risulta sparsa come la D, ma non e simmetrica. Si
noti che essa dipende dal tempo attraverso la a, ossia in generale C = C(t).
E opportuno esaminare la struttura della matrice C (T ) relativa a un elemento T T , che
raccoglie il contributo di tale elemento alla matrice globale C. Usando le stesse notazioni della
Sezione 2.3.6, abbiamo
Z
(T ) (T ) 33 (T )
C = c R , con c = (a ) dx .
1,3 T
Se, come duso, approssimiamo il valore di a su T mediante il suo valore aT nel baricentro del
triangolo, possiamo ridefinire la matrice ponendo
Z Z
(T )
c = (aT ) dx = aT dx ,
T T
R
essendo aT costante su T ; daltro canto, T dx = 13 |T | qualunque sia (volume della
piramide di base T e altezza 1). Concludiamo che
(T ) 1
c = |T | aT , 1 , 3 . (5.39)
3
Dunque, la matrice C (T ) ha le tre righe uguali tra loro; inoltre, la somma degli elementi su
ciascuna riga e nullo, essendo
X 3 3
X
(T ) 1
c = |T | aT = 0 .
3
=1 =1
96 CAPITOLO 5. MODELLI DI DIFFUSIONE
ove a = a(x, t) e un coefficiente variabile in [0, L], mentre > 0 e costante. La formulazione
variazionale discreta e lanaloga monodimensionale della (5.37), ove la discretizzazione spaziale
e quella definita nella Sezione 1.4 ed in particolare nella (1.49); la matrice C, data da
Z L
dk
C = (cjk ) , con cjk = a j dx , (5.41)
0 dx
e una matrice tridiagonale di ordine N . Calcoliamone gli elementi non nulli, dopo aver approssi-
mato il valore del coefficiente a in ogni intervallo Ij mediante il valore aj1/2 = a((xj +xj+1 )/2, t)
nel punto medio dellelemento. Gli elementi della prima sottodiagonale sono dati da:
Z Z
dj1 1 1 hj aj1/2
cj,j1 = aj1/2 j dx = aj1/2 j dx = aj1/2 = .
Ij dx hj Ij hj 2 2
1 1
0 1 0 1
solo in un intorno di ampiezza O() del punto di uscita x = 1, u si discosta da u per adattarsi
alla condizione al bordo ivi imposta. Si ha cioe uno strato limite, ben evidenziato nella Figura
5.2 (la soluzione esatta e indicata con il tratto piu sottile).
Poniamo h = 1/N e consideriamo la suddivisione di [0, L] in N parti uguali di ampiezza h,
per cui Peh = |a|h/. Usiamo una discretizzazione mediante differenze finite centrate su tale
griglia, ottenendo
a
(uj+1 uj1 ) + 2 (uj1 + 2uj uj+1 ) = fj , 1 j N 1 , (5.44)
2h h
in aggiunta a u0 = uN = 0. Per gli stessi valori di f , a e indicati sopra, i risultati numerici
corrispondenti alla scelta N = 16, che implica Peh = 100/32 > 1, sono mostrati nella Figura 5.2,
a sinistra; le oscillazioni spurie tra un nodo di griglia e laltro sono tipiche instabilita legate alluso
di uno schema non appropriato per il caso di convezione dominante. (Un analogo fenomeno si
registra discretizzando mediante elementi finiti lineari senza alcun accorgimento particolare.)
98 CAPITOLO 5. MODELLI DI DIFFUSIONE
Per ovviare a tale problema, una possibilita consiste nel ridurre h, ossia raffinare la griglia,
in modo da portare il corrispondente numero di Peclet di griglia a valori 1. Se pero |a|/
e cos grande da richiedere un valore di h proibitivamente piccolo (soprattutto in problemi bi-
e tridimensionali), si deve agire diversamente, mantenendo la stessa griglia ma cambiando il
modo di discretizzare il termine convettivo. Precisamente, nella (5.44) in luogo del rapporto
incrementale centrato
du uj+1 uj1
a (xj ) a ,
dx 2h
si fa uso del rapporto incrementale allindietro
du uj uj1
a (xj ) a se a > 0 ,
dx h
e del rapporto incrementale in avanti
du uj+1 uj
a (xj ) a se a < 0 .
dx h
In altre parole, si discretizza il termine convettivo tenendo conto della direzione di moto delle
particelle, prendendo linformazione dalla parte da cui essa proviene. Tale filosofia porta ai
metodi upwind (sopra-vento), che verranno esaminati nel Capitolo 6. Il risultato delluso di
questo schema nellesempio sopra considerato e illustrato nella Fig. 5.2, a destra: le oscillazioni
sono scomparse, pur essendo la griglia la stessa gia impiegata per la figura di sinistra.
E possibile dimostrare (si veda la (6.38)) che lo schema ora considerato e equivalente ad uno
schema centrato di tipo (5.44), in cui e sostituito da
|a|
= + h
2
(ossia si e aggiunta una diffusione artificiale, o numerica, proporzionale ad h), di modo che il
corrispondente numero di Peclet di griglia viene a soddisfare
|a|h |a|h
Peh = = <1.
2 2 + |a|h
Nel caso multidimensionale, lapproccio upwind viene applicato in ciascuna variabile di spazio.
Ad esempio, lo schema centrato (5.34) diventa, supponendo per fissare le idee che a1 (xm ) > 0
e a2 (xm ) < 0,
a1 (xm ) a2 (xm )
um + (um u1,m ) + (u,m+1 um ) (5.45)
h h
+ 2 (u,m1 u1,m + 4um u+1,m u,m+1 ) (5.46)
h
= fm , 1 , m N , 0<tT . (5.47)
Anche il metodo degli elementi finiti viene modificato, in modo da tener conto nella for-
mulazione integrale della presenza di un termine convettivo dominante. Uno degli schemi piu
popolari e il cosidetto metodo SUPG (Streamline-Upwind Petrov-Galerkin), con le sue varianti.
Si rimanda alla letteratura specialistica per i dettagli.
Capitolo 6
99
100 CAPITOLO 6. MODELLI DI TRASPORTO E LEGGI DI CONSERVAZIONE
u = u0 per t = 0 , (6.5)
dove u0 e una funzione assegnata in . Inoltre, se il bordo di non e vuoto, per ogni tempo
t (0, T ] puo essere necessario prescrivere anche una condizione su una parte del bordo. A tale
scopo, indicando con n(x) il versore normale a nel punto x , orientato verso lesterno di
, poniamo
(t) = {x : F(u(x, t), x, t) n(x) < 0} . (6.6)
Tale insieme rappresenta la parte di bordo di in cui il flusso di u entra in . Si noti che in
genere (t) dipende da u; si noti inoltre che esso puo essere vuoto.
Imponiamo allora la condizione al bordo
6.1 Esempi
i) Lesempio piu semplice di legge di conservazione e lequazione in una sola variabile di
spazio
u u
+a =0, con a costante 6= 0 . (6.8)
t x
Il flusso e dato da F(u) = F (u) = au. Essendo F funzione lineare di u, lequazione e
lineare (cioe se u e v sono due soluzioni e , R, allora la funzione u + v e ancora
una soluzione).
Lequazione modellizza la propagazione di un segnale lungo lasse delle ascisse, con velocita
costante di modulo |a|; precisamente, la propagazione avviene verso destra se a > 0, verso
sinistra se a < 0. Per comprendere cio, introduciamo le rette nel piano (x, t) definite
dallequazione
dx
=a, (6.9)
dt
ossia le rette di equazione x(t) = at + b con b costante. Tali rette sono dette rette caratte-
ristiche, o semplicemente le caratteristiche dellequazione (6.8). Sovente, esse si rappresen-
tano nel piano (x, t) anziche nel piano (t, x), ed allora assumono lespressione t(x) = a1 x + c
con c costante.
Fissata una caratteristica, la funzione t 7 u(x(t), t) esprime il valore di u lungo tale linea,
in funzione del tempo. La sua derivata rispetto al tempo e
d u dx u u u
u(x(t), t) = (x(t), t) (t) + (x(t), t) = +a (x(t), t) = 0 ,
dt x dt t t x
da cui
u(x(t), t) = costante ; (6.10)
in altri termini, la funzione u e costante lungo ogni caratteristica. Supponiamo allora
che ad un certo tempo t0 in un certo punto x0 la funzione u assuma il valore S, ossia
6.1. ESEMPI 101
t = t0 + a1 (x x0 )
t0 + t
t0
x0 x0 + at x
u(x0 , t0 ) = S. La caratteristica passante per il punto (x0 , t0 ) ha equazione (si veda la Fig.
6.1)
x(t) = x0 + a(t t0 ) , o, equivalentemente, t(x) = t0 + a1 (x x0 ) ;
pertanto
u(x(t), t) = u(x(t0 ), t0 ) = u(x0 , t0 ) = S .
Scegliendo t = t0 + t, si ha x(t) = x0 + at e conseguentemente
Il fatto che ogni soluzione di tale equazione sia costante sulle caratteristiche permette di
esprimere facilmente la soluzione di un problema ai valori iniziali (e al bordo) in termini
1.4 1.4
1.2 1.2
S S
1 1
0.8 0.8
0.2 0.2
x x
0 0
x0 x0 +at
0.2 0.2
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
(x, t)
x at x
u u
+a = 0 , x R, t > 0 ,
t x (6.11)
u(x, 0) = u0 (x) , x R .
Supponiamo invece di voler risolvere lequazione (6.8) nellintervallo limitato = (0, L);
assumiamo nel seguito a > 0. Allora, la precedente relazione (6.12) definisce la soluzione
soltanto per valori di (x, t) che si trovano al di sotto della semiretta x = at (si veda la
Fig. 6.4). Altrimenti, la retta caratteristica passante per (x, t) incontra il bordo sinistro
dellintervallo allistante t(0) = t xa 0. Prescrivendo il valore della soluzione desiderata
nel punto x = 0 in tale istante, sia esso g(t xa ), avremo quindi
u u
+a =0, x (0, L), t > 0 ,
t x
u(0, t) = g(t) , t0, (6.14)
(x, t)
x
t a
0 L x
Se fosse a < 0, assegneremmo il valore della soluzione nel bordo destro x = L. La scelta
del punto di bordo in cui prescrivere la soluzione (a sinistra se a > 0, a destra se a < 0)
traduce nella presente situazione la condizione espressa in generale dalla (6.7).
iii) Supponiamo che una certa regione = Rd sia occupata da un fluido. Sia
a = a(x, t) la velocita euleriana del fluido, vale a dire la velocita della particella che
allistante t occupa la posizione x. Sia u = u(x, t) uno scalare associato al fluido, quale ad
esempio la sua densita di massa oppure la concentrazione di un inquinante disciolto nel
fluido. Definiamo il flusso di u come il vettore
F(u) = au . (6.18)
Assumendo, per ovvi motivi fisici, u > 0, la parte di bordo su cui si impone il valore di u
e dunque data da
(t) = {x : a(x, t) n(x) < 0} .
Nel caso in cui u sia la densita di massa, lequazione (6.1) descrive la conservazione della
massa; la densita di massa e dunque funzione della velocita del fluido. Daltro canto,
104 CAPITOLO 6. MODELLI DI TRASPORTO E LEGGI DI CONSERVAZIONE
per i fluidi comprimibili, la velocita e a sua volta legata alla densita attraverso una o piu
equazioni aggiuntive. Si ottiene quindi complessivamente un sistema di equazioni, dette
equazioni di Eulero nel caso in cui si trascurino gli effetti di viscosita, oppure equazioni di
Navier-Stokes nel caso in cui tali effetti vengano presi in considerazione.
u
+ a u = 0 , (6.19)
t
che dicesi equazione del trasporto di uno scalare passivo. Le linee di corrente sono le curve
caratteristiche di tale equazione, vale a dire le soluzioni x = x(t) del sistema di equazioni
differenziali
dx
= a(x, t) . (6.20)
dt
Si ha allora, generalizzando quando gia visto nel caso monodimensionale,
d dx u u
u(x(t), t) = u(x(t), t) (t) + (x(t), t) = + a u (x(t), t) = 0 ,
dt dt t t
da cui
u(x(t), t) = costante ;
in altri termini, ogni soluzione della (6.19) e costante lungo le linee di corrente.
Uno schema numerico ai volumi finiti si basa su tale relazione, assumendo come incognite
per ogni j ed n le medie di cella numeriche unj , approssimazioni delle medie di cella esatte
Ujn . A partire dalle medie di cella numeriche, si costruisce una approssimazione della soluzione
u(x, tn ) (fase detta di ricostruzione). La situazione piu semplice e quella in cui la soluzione
u(x, tn ) viene approssimata mediante la funzione costante a tratti che vale unj sulla cella Vj .
Tuttavia, tale funzione e discontinua in corrispondenza delle interfacce tra le celle, cioe proprio
laddove sono richieste dalla relazione (6.21) le medie temporali dei flussi. E dunque necessario
n
approssimare le quantita Fj+1/2 mediante flussi numerici fj+1/2 n , che facciano intervenire soltanto
le medie di cella numeriche relative a celle attigue allinterfaccia xj+1/2 . Ogni schema numerico
e definito dalla scelta di un particolare flusso numerico. La situazione piu semplice si ha quando
n
fj+1/2 dipende soltanto dalle medie di cella unj e unj+1 relative alle due celle aventi xj+1/2 come
interfaccia comune, ossia
n
fj+1/2 = f (unj , unj+1 ) , (6.22)
essendo f (u, v) una funzione assegnata di due variabili reali u e v. Nel seguito ci limiteremo a
questa situazione, esaminando alcuni esempi notevoli di flussi numerici.
Una volta effettuata la scelta del flusso numerico, lo schema numerico suggerito dalla (6.21)
e dato da
x un+1
j = x unj (t fj+1/2
n n
t fj1/2 ); (6.23)
106 CAPITOLO 6. MODELLI DI TRASPORTO E LEGGI DI CONSERVAZIONE
introducendo la costante
t
= >0, (6.24)
x
lo schema ai volumi finiti si scrive come
un+1
j = unj (fj+1/2
n n
fj1/2 ). (6.25)
Esso costituisce uno schema a un passo esplicito di avanzamento in tempo, fornendo le medie
di cella al tempo tn+1 come funzione esplicita di quelle al tempo tn . Ci aspettiamo quindi una
condizione di stabilita nella scelta del passo temporale t in funzione di quello spaziale x; cio
verra discusso piu avanti. Osserviamo infine che le medie di cella al tempo iniziale sono quelle
della funzione u0 (x) assegnata dal problema (6.11), o una loro approssimazione (ad esempio i
valori di u0 nei nodi xj ).
Esaminiamo ora alcuni schemi numerici notevoli.
un+1
j unj unj+1 unj1
+a =0, (6.28)
t 2x
e dunque corrisponde ad una discretizzazione alle differenze finite dellequazione di propa-
gazione (6.8) nel punto (xj , tn ), in cui la derivata temporale e approssimata con un rap-
porto incrementale in avanti mentre la derivata spaziale e approssimata con un rapporto
incrementale centrato.
a 1
fLF (u, v) = (u + v) + (u v) (6.29)
2 2
e lo schema risultante e
1 1
un+1
j = (unj+1 + unj1 ) a(unj+1 unj1 ) . (6.30)
2 2
Esso puo essere scritto in forma equivalente come
un+1
j unj unj+1 unj1 1 unj+1 2unj + unj1
+a x =0. (6.31)
t 2x 2 x2
6.2. DISCRETIZZAZIONE MEDIANTE VOLUMI FINITI 107
Il metodo corrisponde quindi ad una discretizzazione alle differenze finite, nel punto
(xj , tn ), dellequazione modificata
u u 1 2u
+a x =0, (6.32)
t x 2 x2
ottenuta aggiungendo un termine di diffusione proporzionale a x; come sopra, la derivata
temporale e approssimata con un rapporto incrementale in avanti mentre le derivate spa-
ziali prima e seconda sono approssimate con rapporti incrementali centrati. La diffusione
aggiunta, non presente nel modello matematico da cui siamo partiti, prende il nome di
diffusione artificiale, o numerica.
e lo schema risultante e
1 1
un+1
j = unj a(unj+1 unj1 ) + |a|(unj+1 2unj + unj1 ) (6.34)
( 2 2
n n n
uj a(uj uj1 ) se a > 0 ,
= (6.35)
unj a(unj+1 unj ) se a < 0 .
un+1
j unj unj unj1
+a =0 se a > 0 , (6.36)
t x
oppure
un+1
j unj unj+1 unj
+a =0 se a < 0 . (6.37)
t x
Lo schema upwind corrisponde dunque ad una discretizzazione alle differenze finite delle-
quazione di propagazione (6.8) nel punto (xj , tn ), in cui la derivata temporale e approssi-
mata con un rapporto incrementale in avanti, mentre la derivata spaziale e approssimata
con un rapporto incrementale allindietro se a > 0, in avanti se a < 0. Ricordando che
linformazione si propaga (con una espressione figurata, il vento tira) da sinistra verso
destra se a > 0 e da destra verso sinistra se a < 0, possiamo dire che lo schema definisce
le nuove medie di cella andando a prendere linformazione dalla parte da cui essa proviene
(dalla parte sopra-vento, da cui la denominazione dello schema).
Un altro modo di scrivere lo schema, equivalente alle (6.36)-(6.37), e
un+1
j unj unj+1 unj1 |a| unj+1 2unj + unj1
+a x =0 (6.38)
t 2x 2 x2
(si confronti con la (6.31)). Il metodo corrisponde ancora ad una discretizzazione centrata
di una equazione modificata analoga alla (6.32); il coefficiente di proporzionalita e ora
dipendente dalla velocita a.
108 CAPITOLO 6. MODELLI DI TRASPORTO E LEGGI DI CONSERVAZIONE
un+1
j unj unj+1 unj1 n n n
a2 uj+1 2uj + uj1
+a x =0. (6.41)
t 2x 2 x2
Il metodo corrisponde quindi ad una discretizzazione alle differenze finite, nel punto
(xj , tn ), dellequazione modificata
u u a2 2 u
+a x =0,
t x 2 x2
ottenuta ancora aggiungendo un termine di diffusione proporzionale a x, ma con un
coefficiente diverso da quelli dei metodi di Lax-Friedrichs o Upwind.
Il comportamento dei vari metodi sopra descritti e illustrato dalla Fig. 6.5. La soluzione
esatta, al tempo t = 0, vale 1 nellintervallo [0.25, 0.5] ed e nulla altrove; per t > 0, essa si muove
con velocita a = 1/2. Il grafico relativo al metodo di Eulero in avanti/centrato e stato ottenuto
con x = 1/64; gli altri grafici con x = 1/128. Si notino la pessima qualita del metodo
di Eulero, la diffusione numerica dei metodi di Lax-Friendrichs e Upwind (piu accentuata nel
primo), e la dispersione numerica del metodo di Lax-Wendroff.
6.3.1 Stabilita
Siano unj , j Z, n 0, le medie di cella generate dallo schema per una certa scelta di x e t.
Introduciamo la funzione costante a tratti
essa rappresenta una approssimazione della soluzione esatta u al tempo tn . Una misura della
grandezza di tale funzione e data dalla norma del massimo su R
1.4 1.4
0.6 0.6
0.4 0.4
0.2 0.2
0 0
0.2 0.2
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
1.4 1.4
0.6 0.6
0.4 0.4
0.2 0.2
0 0
0.2 0.2
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
Figura 6.5: Confronto tra i diversi metodi di discretizzazione nel caso di una soluzione esatta
costante a tratti
Scegliamo una di queste norme, che indicheremo semplicemente con k kR . Supponiamo che
il dato iniziale u0 abbia norma ku0 kR finita; se le quantita u0j sono le medie di cella esatte di
u0 , si puo verificare che ku0x,t kR ku0 kR . Tuttavia, nei passi successivi, la norma kunx,t kR
potrebbe crescere da un passo allaltro. Poiche per arrivare al tempo finale T sono necessari
T
N passi con N = t , per t molto piccoli la norma potrebbe assumere valori arbitrariamente
grandi prima che tn raggiunga il valore T . In termini pratici, si potrebbe avere un overflow nel
calcolo delle medie di cella. La condizione di stabilita (asintotica) di uno schema numerico di
110 CAPITOLO 6. MODELLI DI TRASPORTO E LEGGI DI CONSERVAZIONE
Definizione 6.3.1 Uno schema numerico di tipo (6.25) si dice stabile nella norma k kR se
per ogni T > 0 esiste una costante CT > 0, che puo dipendere da T ma e indipendente da x e
t, tale che
kunx,t kR CT ku0 kR , per ogni n N .
Teorema 6.3.3 i) La condizione CFL e necessaria per la stabilita di uno schema numerico di
tipo (6.25) rispetto a una qualunque delle norme considerate.
ii) Per i metodi di Lax-Friedrichs, Upwind e di Lax-Wendroff, la condizione CFL e sufficiente
per la stabilita forte nella norma del valore assoluto.
Nella pratica, per i metodi appena citati, si fissa un valore di Cour soddisfacente 0 < Cour 1
e, dopo aver scelto il passo spaziale x, si determina il passo temporale t tramite la relazione
Cour
t = x ; (6.48)
|a|
in tal modo, la condizione CFL e soddisfatta.
Il caso Cour = 1 merita unattenzione particolare. Infatti, per quanto riguarda la soluzione
esatta, la posizione delle rette caratteristiche (si veda la Fig. 6.6, al centro) mostra che i suoi
valori al tempo tn+1 nella cella Vj dipendono solo dai suoi valori al tempo tn nella cella Vj1 se
a > 0, oppure nella cella Vj+1 se a < 0. In particolare, le medie di cella soddisfano
(
n
Uj1 se a > 0 ,
n+1
Uj = n
(6.49)
Uj+1 se a < 0 .
6.3. STABILITA, CONSISTENZA E CONVERGENZA 111
tn+1
tn
Vj1 Vj Vj+1
tn+1
tn
Vj1 Vj Vj+1
tn+1
tn
Vj1 Vj Vj+1
Figura 6.6: Dipendenza della soluzione nella cella Vj al tempo tn+1 dai valori al tempo tn , per
a > 0, nei tre casi: Cour < 1 (in alto), Cour = 1 (al centro), Cour > 1 (in basso)
Per quanto riguarda invece gli schemi numerici, i metodi di Lax-Friendrichs, Upwind e Lax-
Wendroff vengono tutti a coincidere se Cour = 1; cio si vede confrontando le (6.29), (6.33),
(6.39) ed osservando che Cour = 1 equivale a = |a|. Si vede immediatamente che la soluzione
comune a tutti i metodi soddisfa
(
n+1 unj1 se a > 0 ,
uj = (6.50)
unj+1 se a < 0 .
Concludiamo quindi che le medie di cella numeriche coincidono con quelle esatte.
Infine, per quanto riguarda il metodo di Eulero esplicito/centrato, si puo dimostrare che esso
e stabile nella norma quadratica con costante CT = eT /2 , a condizione che t (x/a)2 .
viene a dipendere dallistante temporale corrente; la condizione CFL si esprime come Courn 1
per ogni n 0. Si noti che, anche imponendo Courn = 1, si potranno avere delle celle in cui
|anj+1/2 | < 1, e dunque in generale lo schema numerico perde la possibilita di riprodurre le
medie di cella esatte.
6.3.2 Consistenza
Una misura della qualita di uno schema numerico e fornita dal seguente criterio. Le medie di
cella della soluzione esatta, Z xj+1/2
n 1
Uj = u(x, tn ) dx ,
x xj1/2
n
soddisfano le relazioni (6.21), dove gli Fj+1/2 sono i flussi esatti. Se invece calcoliamo i flussi
numerici delle medie di cella esatte, ponendo
n
Fj+1/2 = f (Ujn , Uj+1
n
),
in generale lo schema numerico (6.23) non sara soddisfatto dalle quantita Ujn , Fj+1/2
n , ossia
lespressione
x Ujn+1 x Ujn + (t Fj+1/2
n n
t Fj1/2 )
non sara in generale nulla. Dividendo per x t, introduciamo quindi le quantita
n n
Ujn+1 Ujn Fj+1/2 Fj1/2
jn = jn (x, t) = + , (6.51)
t x
detti errori locali di troncamento; in essi, si e posto in evidenza la dipendenza dai parametri di
discretizzatione x e t. Infatti, diamo la seguente definizione:
Definizione 6.3.4 Uno schema numerico di tipo (6.25) si dice consistente se per ogni solu-
zione regolare u e per ogni j ed n si ha
jn (x, t) 0 , per x, t 0 .
E notevole il fatto che la condizione di consistenza appena enunciata equivalga a una semplice
condizione sul flusso numerico f (u, v) che definisce lo schema, vale a dire alla richiesta che
quando i due argomenti coincidono, il flusso numerico riproduca il flusso esatto; precisamente,
la condizione equivalente e
Definizione 6.3.5 Uno schema numerico consistente si dice di ordine (p, q) se, per ogni so-
luzione u sufficientemente regolare, lerrore di troncamento (x, t) in ogni punto arbitrario
(xj , tn ) soddisfa
(x, t) = c1 xp + c2 tq + o(xp , tq ) , per x, t 0 ,
dove le costanti c1 e c2 dipendono da opportune derivate di u nel punto (xj , tn ).
6.3. STABILITA, CONSISTENZA E CONVERGENZA 113
E (x, t) c1 x2 + c2 t ,
dunque il metodo e di ordine (1, 1). Si noti che scegliendo t via via piu piccolo rispetto
a x (cioe scegliendo numeri di Courant via via piu piccoli), lapprossimazione peggiora.
U (x, t) c1 x + c2 t ,
LW (x, t) c1 x2 + c2 t2 ,
6.3.3 Convergenza
Indichiamo con un la soluzione esatta al tempo tn , ossia la funzione x 7 u(x, tn ).
Definizione 6.3.6 Uno schema numerico di tipo (6.25) si dice convergente nella norma k kR
se per ogni fissato T > 0, si ha
Teorema 6.3.7 Uno schema numerico di tipo (6.25), applicato al problema lineare ai valori
iniziali (6.11), e convergente nella norma k kR se e solo se e consistente e stabile in tale
norma.
Dunque, in base a quanto visto sopra, possiamo dire che i metodi di Lax-Friedrichs, Lax-
Wendroff e Upwind sono convergenti nella norma del valore assoluto, mentre il metodo di Eulero
esplicito/centrato e convergente nella norma quadratica se t e t tendono a 0 in modo da
rispettare la condizione t (x/a)2 .
Se la soluzione e sufficientemente regolare, lordine (p, q) di consistenza del metodo definisce
lordine di convergenza a zero dellerrore tra le medie di cella esatte e quelle numeriche, rispetto
a x e t. Precisamente, indichiamo con U n = U n (x) la funzione costante a tratti che in ogni
cella Vj assume il valore Ujn . Si ha allora
viene detta (funzione) armonica elementare, o onda elementare. Essa e periodica di periodo
minimo 2/|k|, e quindi di frequenza |k|/(2); lintero |k| e il suo numero donda.
Per ogni tempo t > 0, la soluzione u(x, t) del problema (6.11) e ancora una funzione 2-
periodica. Infatti, ricordando la (6.13), abbiamo
X X X
u(x, t) = u0 (x at) = U0,k eik(xat) = U0,k eikat eikx = Uk (t)eikx . (6.54)
kZ kZ kZ
sono dati da
Uk (t) = U0,k eikat . (6.56)
Inoltre, le prime due uguaglianze della (6.54) possono essere scritte come
X
u(x, t) = U0,k k (x at) , (6.57)
kZ
e cio mostra che nella soluzione esatta le ampiezze delle armoniche elementari sono invarianti
nel tempo, mentre tutte le armoniche si muovono con la stessa velocita a.
Osservazione 6.4.1 Prima di passare alla discretizzazione numerica, e utile per cio che segue
comprendere leffetto della moltiplicazione di una armonica elementare k (x) per un numero
complesso zk . Scriviamo tale numero in notazione esponenziale, come
zk = |zk |eik ,
Cio mostra che leffetto della moltiplicazione di k (x) per zk e doppio: da una parte lampiezza
dellonda viene modificata di un fattore |zk |, dallaltra londa viene traslata lungo lasse reale
con velocita ak per un tempo .
Vediamo ora come si comporta la soluzione discreta generata da uno degli schemi sopra
considerati. Fissato un intero N > 0, dividiamo lintervallo di periodicitaa in 2N parti uguali,
vale a dire scegliamo x = (2)/(2N ) = /N . E immediato verificare che le medie di cella di
u0 (x), siano esse u0j , sono 2N -periodiche, ossia soddisfano u0j+2N = u0j per ogni j Z. Anche
le successive medie di cella unj definite per n > 0 dallo schema sono 2N -periodiche; cio segue
ricorsivamente dal fatto che ogni schema numerico sopra considerato e della forma
un+1
j = cm unj1 + c0 unj + cp unj+1 , (6.59)
per opportuni coefficienti reali cm , c0 , cp . La Tabella 6.1 fornisce lespressione di tali coefficienti
per i metodi di Lax-Friedrichs, Upwind e Lax-Wendroff, ottenuti riarrangiando rispettivamente
le espressioni (6.30), (6.34) e (6.40).
Possiamo allora dare una rappresentazione in serie di Fourier analoga alla (6.54) delle medie
di cella al generico passo n. Infatti, definendo i coefficienti di Fourier discreti
2N 1
X n ikxj
unk = uj e , N k < N , (6.60)
N
j=0
116 CAPITOLO 6. MODELLI DI TRASPORTO E LEGGI DI CONSERVAZIONE
Schema cm c0 cp
1 1
Lax-Friedrichs 2 (1 + a) 0 2 (1 a)
Upwind (a > 0) a 1 a 0
1 1
Lax-Wendroff 2 a(a + 1) 1 (a)2 2 a(a 1)
(che generalizzano quelli continui dati dalla (6.55)), e possibile che dimostrare che vale la formula
di rappresentazione
N
X 1
n
uj = unk eikxj per ogni j Z ; (6.61)
k=N
N
X 1
infatti, il polinomio trigonometrico pN (x) = unk eikx interpola i valori delle medie di cella
k=N
nei centri delle celle xj , ossia soddisfa pN (xj ) = unj per ogni j Z. Notiamo poi che
N
X 1 N
X 1 N
X 1
unj1 = unk eikxj1 = unk eik(xj x) = unk eikx eikxj , (6.62)
k=N k=N k=N
vale a dire lincremento o il decremento di ogni indice corrisponde alla moltiplicazione di ciascun
coefficiente di Fourier discreto per un opportuno numero complesso di modulo unitario.
Sostituendo le (6.61) e (6.62) nella (6.59), abbiamo allora la rappresentazione
N
X 1 N
X 1
un+1
j = unk cm eikx + c0 + cp eikx eikxj = unk k eikxj , (6.63)
k=N k=N
ossia
unk = u0,k (k )n ,
avendo indicato con u0,k = u0k i coefficienti di Fourier discreti delle medie di cella del dato
iniziale. Si presti attenzione al fatto che, nelle due precedenti formule, lespressione (k )n significa
elevamento alla potenza n del numero k , mentre gli altri apici n indicano semplicemente quantita
6.4. CENNO ALLE PROPRIETA DI DIFFUSIONE E DISPERSIONE NUMERICA 117
che e lanaloga discreta della (6.56). Inoltre, ricordando la (6.58), si ha la rappresentazione delle
medie di cella
N
X 1
n
uj = u0,k |k |n k (xj ak tn ) , (6.66)
k=N
|k | ak /a
C B A
A B
C
1
k
N N/2 0 N/2 N k
N N/2 0 N/2 N
|k | ak /a
C
A
B
B 1 C
A
k
N N/2 0 N/2 N k
N N/2 0 N/2 N
|k | ak /a
B C
A 1
B
k A
N N/2 0 N/2 N k
N N/2 0 N/2 N
Figura 6.7: Modulo |k | dei fattori di amplificazione (colonna di sinistra) e rapporto ak /a tra
velocita numeriche e velocita esatta (colonna di destra) per i metodi di Lax-Friedrichs (in alto),
Upwind (al centro) e Lax-Wendroff (in basso), con tre scelte del numero di Courant: A : Cour =
0.5, B : Cour = 0.7, C : Cour = 0.9
Capitolo 7
Richiami e complementi
2u 2u 2u u u
a 2 + b + c 2 +p +q + su = f ,
x1 x1 x2 x2 x1 x2
dove a, b, . . . , s, f sono funzioni reali note che possono dipendere da x1 e x2 , tali che a, b, c non
siano contemporaneamente nulle.
Lequazione viene classificata in uno dei tre tipi ellittico, parabolico e iperbolico. Tale classifi-
cazione e molto importante, perche il tipo determina varie proprieta qualitative della soluzione,
oltreche la struttura delle condizioni (al bordo, iniziali) che devono accompagnare lequazione
quando si voglia individuarne una particolare solutione di interesse.
La classificazione si effettua nel modo seguente: si introduce la matrice
a b/2
A= ,
b/2 c
che per ipotesi non e identicamente nulla. Essendo simmetrica, essa avra due autovalori reali 1
e 2 , non entrambi nulli. Allora vale una e una sola delle seguenti possibilita:
i due autovalori sono diversi da zero e di segno concorde: diremo che lequazione e ellittica;
i due autovalori sono diversi da zero e di segno discorde: diremo che lequazione e iperbolica.
Si osservi che il tipo dellequazione non dipende dai coefficienti p, q, s dei termini di ordine
inferiore al secondo. Si noti inoltre che quando i coefficienti a, b, c dipendono da x1 e x2 , il tipo
dellequazione potrebbe variare da punto a punto; nelle principali applicazioni, pero, questo non
accade.
La terminologia trae origine dal fatto che le curve di livello della forma quadratica
T A = a12 + b1 2 + c22
119
120 CAPITOLO 7. RICHIAMI E COMPLEMENTI
nel piano 1 , 2 sono delle ellissi nel primo caso, delle iperbole nel terzo caso e delle rette (ossia
parabole degeneri) nel secondo caso.
Lesempio tipico di equazione ellittica e lequazione di Poisson
2u 2u
u = + =f ,
x21 x21
per la quale si ha A = I, matrice identita.
Lesempio tipico di equazione parabolica e lequazione del calore in una sbarra,
u 2 u
2 =f
t x
1 0
(ove si e posto x = x1 e t = x2 ), per la quale si ha A = .
0 0
Lesempio tipico di equazione iperbolica e lequazione delle onde in un filo elastico,
2u 2u
2 =f ,
t2 x
1 0
per la quale si ha A = .
0 1
Passiamo ora a considerare una equazione del secondo ordine in tre variabili indipendenti x1 ,
x2 e x3 ,
2u 2u 2u 2u 2u 2u u u u
a + b + c + d + e + g +p +q +r + su = f ;
x21 x1 x2 x22 x1 x3 x2 x3 x23 x1 x2 x3
in tal caso, la classificazione si basa sulla matrice
a b/2 d/2
A = b/2 c e/2 .
d/2 e/2 g
Se i suoi autovalori sono tutti diversi da zero e di segno concorde, lequazione sara detta ellittica;
lequazione di Poisson
2u 2u 2u
u = + + =f
x21 x22 x23
e di questo tipo. Se invece uno degli autovalori di A e nullo mentre i rimanenti sono diversi da
zero e di segno concorde, lequazione sara detta parabolica; lequazione del calore in due variabili
di spazio,
u
u = f ,
t
dove ora indica il Laplaciano nelle sole variabili di spazio x1 e x2 mentre si e posto t = x3 , e
di questo tipo. Infine, se tutti gli autovalori di A sono diversi da zero e uno di essi e di segno
discorde rispetto agli altri, lequazione si dira iperbolica; lequazione delle onde in due variabili
di spazio,
2u
u = f ,
t2
con come sopra, e di questo tipo.
Altri casi sono possibili, ma essi hanno una rilevanza fisica assai piu limitata.
7.2. IL TEOREMA DELLA DIVERGENZA 121
dove
d
X gi
g = (7.2)
xi
i=1
indica la divergenza del campo vettoriale g.
Lespressione a primo membro, detta rapporto incrementale allindietro, fornisce ancora una
approssimazione al primo ordine di v (x).
Una approssimazione piu precisa puo essere ottenuta combinando tre valori di v. Scriviamo
gli sviluppi di Taylor di v in x al terzo ordine, relativamente agli incrementi x. Abbiamo
1 1
v(x + x) = v(x) + v (x)x + v (x)x2 + v (x)x3 + o(x3 ) ,
2 6 (7.6)
1 1
v(x x) = v(x) v (x)x + v (x)x2 v (x)x3 + o(x3 ) ;
2 6
sottraendo la seconda espressione dalla prima, otteniamo
1
v(x + x) v(x x) = 2v (x)x + v (x)x3 + o(x3 ) ,
3
da cui ricaviamo facilmente
v(x + x) v(x x) 1
= v (x) + v (x)x2 + o(x2 ) . (7.7)
2x 3
Lespressione a primo membro prende il nome di rapporto incrementale centrato e fornisce una
approssimazione al secondo ordine di v (x), in quanto lerrore, rappresentato dai termini suc-
cessivi a v (x) a secondo membro, tende a 0 almeno come x2 quando x tende a 0. Equiva-
lentemente, la formula di derivazione a primo membro e esatta se v e un polinomio di secondo
grado. Si dimostra che il rapporto incrementale centrato rappresenta il valore esatto della deri-
vata prima in x del polinomio di secondo grado (parabola) che interpola v nei punti x x, x,
x + x. Osserviamo anche che tale formula e la media aritmetica tra i rapporti incrementali in
avanti e allindietro.
Combinando sviluppi di Taylor relativi a incrementi diversi si possono ottenere formule di deri-
vazione di ordine superiore al primo di tipo non centrato. Ad esempio, considerando lincremento
2x, abbiamo
4
v(x + 2x) = v(x) + 2v (x)x + 2v (x)x2 + v (x)x3 + o(x3 ) . (7.8)
3
Moltiplichiamo tale equazione per un coefficiente da determinarsi, e sommiamo il risultato
alla prima delle (7.6); imponiamo poi che il coefficiente risultante che moltiplica v (x) sia 0. In
tal modo otteniamo
v(x + 2x) + 4v(x + x) 3v(x) 1
= v (x) v (x)x2 + o(x2 ) , (7.9)
2x 3
il cui primo membro fornisce una approssimazione al secondo ordine in avanti di v (x).
Infine, vediamo come ottenere una formula di derivazione numerica per approssimare il valore
della derivata seconda di v in x. A tale scopo, possiamo sommare tra loro, anziche sottrarre
come fatto sopra, i due sviluppi di Taylor in (7.6); tuttavia, per valutare lerrore commesso, e
necessario utilizzare sviluppi al quarto ordine anziche al terzo. Scriviamo dunque
1 1 1 (4)
v(x + x) = v(x) + v (x)x + v (x)x2 + v (x)x3 + v (x)x4 + o(x4 ) ,
2 6 24 (7.10)
1 1 1 (4)
v(x x) = v(x) v (x)x + v (x)x2 v (x)x3 + v (x)x4 + o(x4 ) ;
2 6 24
7.4. NORME DI VETTORI E DI MATRICI 123
Ciascuna delle espressioni finora introdotte, che indicheremo genericamente con kxk, e una
norma, ossia soddisfa le seguenti proprieta:
Sia poi A = (aij )1i,jn Rnn una matrice quadrata di ordine n. Ad ogni norma di vettore
kxk e associata una norma di matrice kAk, definita dallespressione
kAxk
kAk = max = max kAxk . (7.16)
xR x=
n 6 0 kxk xRn kxk=1
124 CAPITOLO 7. RICHIAMI E COMPLEMENTI
dove AT = (aji )1i,jn indica la matrice trasposta di A. Per quanto riguarda la norma euclidea,
si dimostra che q
kAk2 = (AT A) , (7.22)
dove (B) indica il raggio spettrale di una matrice B, ossia il massimo modulo degli autovalori
di B:
(B) = max{ || : e autovalore di B } .
Se A e una matrice simmetrica (e dunque con autovalori tutti reali), la matrice AT A = A2
ha come autovalori i quadrati degli autovalori di A; infatti
Aw = w A2 w = A(Aw) = A(w) = Aw = 2 w .
Pertanto, per una tale matrice, (AT A) = max{ 2 : e autovalore di A } e dunque
kAk2 = max{ || : e autovalore di A } . (7.23)
Se A e una matrice simmetrica e definita positiva, con autovalori soddisfacenti
0 < 1 2 n ,
posto min = 1 e max = n si ha quindi
kAk2 = max . (7.24)
Ricordando che gli autovalori della matrice inversa A1 sono i reciproci degli autovalori di A,
in quanto
Aw = w w = A1 Aw = A1 (w) = A1 w A1 w = 1 w ,
ed osservando che max{ 1
i : 1 i n} = 1
1 , si ha quindi
1
kA1 k2 = . (7.25)
min
7.4. NORME DI VETTORI E DI MATRICI 125
Ax = b ,
(che rappresenta la soluzione del problema, o luscita del sistema fisico). Supponiamo di
conoscere non b ma una sua approssimazione b, a causa di vari fattori (errori di misura, errori
di rappresentazione numerica, etc.); corrispondentemente, abbiamo una soluzione x definita da
Ax = b ;
kb bkp
kbkp
inoltre,
kbkp = kAxkp kAkp kxkp ,
ossia
1 1
kAkp .
kxkp kbkp
Ne segue che
kx xkp kb bkp
condp (A) . (7.28)
kxkp kbkp
Dunque il numero di condizionamento controlla di quanto al massimo lerrore relativo sui dati
possa amplificarsi dando luogo allerrore relativo sulla soluzione (ricordiamo che il numero di
126 CAPITOLO 7. RICHIAMI E COMPLEMENTI
n cond2 (H n )
1 1
2 19.2815
3 524.0568
4 1.5514e+04
5 4.7661e+05
6 1.4951e+07
7 4.7537e+08
8 1.5258e+10
9 4.9315e+11
10 1.6025e+13
Tabella 7.1: Numeri di condizionamento in norma euclidea delle matrici di Hilbert H n al variare
dellordine n
max
cond2 (A) = . (7.29)
min
Dunque una matrice simmetrica e definita positiva e malcondizionata quando i suoi autovalori
hanno ordini di grandezza molto diversi tra loro.
Un classico esempio di matrici (simmetriche e definite positive) molto malcondizionate e
costituito dalla famiglia di matrici di Hilbert H n (n 1), i cui elementi sono dati da
1
hij = , 1 i, j n ,
i+j1
(queste matrici sono definite dal comando hilb di MATLAB). Riportiamo nella Tabella 7.1 i
numeri di condizionamento cond2 (H n ) (stimati attraverso il comando cond di MATLAB) al
crescere di n. Come si vede, si ha una crescita esponenziale!
Le matrici generate dalla discretizzazione mediante differenze finite o elementi finiti di un
problema differenziale ai valori al bordo hanno anchesse numero di condizionamento che cresce
con lordine n (che e legato ai parametri di discretizzazione, quali il passo spaziale h); per
fortuna, la crescita e algebrica, e non esponenziale, in n.
7.5. LOCALIZZAZIONE DEGLI AUTOVALORI DI UNA MATRICE 127
n
X
Ci = {z C : |z aii | ri = |aij | } , i = 1, 2, . . . , n . (7.30)
j=1,j6=i
Notiamo che il cerchio Ci ha centro sullasse reale nel punto di ascissa aii , e raggio uguale alla
somma dei moduli degli elementi che stanno nella riga i, al di fuori della diagonale.
Teorema 7.5.1 Sia A una matrice reale quadrata di ordine n e siano Ci , i = 1, 2, . . . , n i suoi
cerchi di Gerschgorin. Allora:
Sn
1. Ogni autovalore di A sta nellunione C = i=1 Ci dei cerchi di Gerschgorin.
S
2. Se C = mk=1 Cik e lunione di m cerchi di Gerschgorin ed e disgiunta dallunione dei ri-
manenti nm cerchi (diciamo che C e una componente connesa di C), allora esattamente
m autovalori di A stanno in C .
3. Sia A irriducibile, cioe non esista nessuna permutazione di righe e colonne di A che la
trasformi in una matrice diagonale a blocchi
A11 O
B=
O T A22
con A11 , A22 matrici quadrate di ordine < n. Se un autovalore si trova sul bordo di C,
allora appartiene a tutti i cerchi di Gerschgorin di A.
Poiche gli autovalori della matrice trasposta AT coincidono con quelli della matrice A, pos-
siamo applicare il teorema di Gerschgorin anche a tale matrice, nellintento di ottenere una
localizzazione piu precisa degli autovalori; i centri dei cerchi rimangono invariati, mentre i raggi
sono le somme dei moduli degli elementi non diagonali di ciascuna colonna di A.
Se la matrice A e simmetrica, i suoi autovalori sono reali. Pertanto e sufficiente analizzare gli
intervalli di Gerschgorin C bi , dati dallintersezione dei cerchi di Gerschgorin Ci con lasse reale.
C6
C4 C5
C3 C1
C2
6 18
C1
C2
C3
Figura 7.1: I cerchi di Gerschgorin e le relative componenti connesse, per lEsempio 7.5.2
mentre i corrispondenti cerchi sono rappresentati in Fig. 7.1. Le componenti connesse sono
b = C
C b2 C
b3 = [4, 0], b = C
C b1 C
b4 C
b5 = [1, 10], b = C
C b6 = [11, 25] .
1 2 3
1 = 2.2590...
2 = 1.2393...
3 = 3.1028...
4 = 4.1440...
5 = 5.8899...
6 = 19.3616...
per un sistema di n equazioni differenziali del primo ordine in n incognite. Qui u : [0, T ] Rn
e il vettore, dipendente dal tempo in modo differenziabile, che raccoglie le incognite, mentre
7.6. METODI DI AVANZAMENTO IN TEMPO 129
F : Rn [0, T ] Rn e una funzione assegnata, che supponiamo continua nel complesso delle
variabili u e t, e lipschitziana nella variabile u uniformemente in t. Questultima ipotesi significa
che esiste una costante L > 0 tale che (rispetto a una qualunque norma in Rn )
Chiameremo costante di Lipschitz di F ogni costante L per cui valga la relazione precedente.
Un esempio notevole e dato dal caso in cui F e una funzione affine della prima variabile, ossia
quando
F (u, t) = Au + b(t) , (7.33)
con A matrice quadrata di ordine n. In tal caso, ricordando la (7.17), si ha
dunque, la norma di A associata alla norma scelta in Rn e una (addirittura, la piu piccola)
costante di Lipschitz per F .
Tornando al caso generale, ricordiamo che, sotto le ipotesi fatte su F , il problema (7.31)
ammette una e una sola soluzione per ogni scelta del dato iniziale u0 Rn .
Per approssimare numericamente una tale soluzione, la strategia piu popolare consiste nel
definire un metodo di avanzamento in tempo. Cio significa che si selezionano (con vari criteri)
K > 0 istanti temporali tk , con 0 = t0 < t1 < < tk < tk+1 < < tK = T , per ciascuno dei
quali si costruisce ricorsivamente una approssimazione uk u(tk ) della soluzione; precisamente,
giunti allistante tk+1 , si definisce uk+1 a partire dalla conoscenza delle approssimazioni uj ,
j k, gia calcolate in uno o piu passi precedenti.
La situazione concettualmente piu semplice si ha quando si avanza con un passo temporale
costante t > 0 (in tal caso si pone K = T /t, assumendo che questo quoziente sia intero); gli
istanti temporali sono allora definiti da tk = kt, per k = 0, 1, . . . , K.
Alcuni tra i piu semplici metodi di avanzamento in tempo sono i seguenti:
Metodo di Eulero esplicito (EE):
I primi tre metodi possono essere dedotti da altrettante formule di derivazione numerica,
osservando che se u e la soluzione di (7.31), si ha u (t) = F (u(t), t) per ogni t. Dunque, il
metodo di Eulero esplicito segue dalla relazione
u(tk+1 ) u(tk )
u (tk ) = F (u(tk ), tk )
t
(cioe dalla formula del rapporto incrementale in avanti, si ricordi la (7.3)) sostituendo ai valori
esatti di u quelli approssimati e trascurando lerrore di derivazione numerica. Similmente, il
metodo di Eulero implicito segue dalla relazione
u(tk+1 ) u(tk )
u (tk+1 ) = F (u(tk+1 ), tk+1 )
t
(cioe dalla formula del rapporto incrementale allindietro, si ricordi la (7.5)), mentre il metodo
del punto medio discende dalla relazione
u(tk+1 ) u(tk1 )
u (tk ) = F (u(tk ), tk )
2t
(cioe dalla formula del rapporto incrementale centrato, si ricordi la (7.7)). Il metodo dei trapezi
discende invece da una formula di integrazione numerica applicata alla relazione
Z tk+1 Z tk+1
u(tk+1 ) u(tk ) = u (t) dt = F (u(t), t) dt ,
tk tk
ottenuta integrando lidentita u (t) = F (u(t), t) sullintervallo [tk , tk+1 ]. Lintegrale a destra
puo essere approssimato mediante la formula dei trapezi
Z tk+1
F (u(t), t) dt t 12 F (u(tk ), tk ) + 12 F (u(tk+1 ), tk+1 ) ,
tk
da cui si giunge allo schema numerico procedendo come sopra. Anche gli altri metodi sopra
considerati possono essere facilmente dedotti da un approccio integrale di questo tipo.
Il metodo di Eulero esplicito e un esempio di metodo esplicito e a un passo; un tale metodo
ha la forma generale
uk+1 = uk + t(uk , tk , t) , k0, (7.38)
dove = (u, t, t) e una funzione continua dei suoi argomenti. Per il metodo EE, si ha
semplicemente (u, t, t) = F (u, t). La nuova approssimazione uk+1 dipende soltando dal-
lapprossimazione uk al passo precedente, ed e data da una formula esplicita in funzione di
questa.
I metodi di Eulero implicito e dei trapezi sono invece esempi di metodi impliciti e a un passo,
ossia del tipo
uk+1 = uk + t(uk , uk+1 , tk , t) , k0, (7.39)
(rispettivamente con (u, v, t, t) = F (v, t + t) e (u, v, t, t) = 21 F (u, t) + 12 F (v, t + t)),
in cui ancora uk+1 dipende solo da uk , ma in modo implicito (cioe uk+1 compare tanto a primo
membro quanto a secondo membro). Si deve cioe risolvere unequazione (lineare o nonlineare)
nellincognita uk+1 ad ogni passo temporale. Ad esempio, se la funzione F e definita dalla
(7.33), il metodo di Eulero implicito (7.35) diventa
(I tA)uk+1 = uk + tb(tk+1 ) .
Infine, il metodo del punto medio e un esempio di metodo esplicito e multipasso (per la precisio-
ne, a due passi ): la soluzione dipende, attraverso una formula esplicita, da uk e uk1 . E dunque
necessario, per innescare il calcolo ricorsivo, definire in altro modo la prima approssimazione
u1 u(t1 ), ad esempio con un passo del metodo EE.
Altri metodi piu sofisticati saranno presentati nella Sez. 7.6.3.
dunque lerrore dopo il primo passo tende a 0 quadraticamente in t. Una relazione analoga
vale se u1 e definito dal metodo di Eulero implicito. Se invece u1 e definito dal metodo dei
trapezi, si ha
ku(t1 ) u1 k = O(t3 ) per t 0 ,
a condizione che u sia derivabile tre volte nellorigine.
Definizione 7.6.1 Un metodo a un passo, definito da una formula di tipo (7.38), si dice
consistente se la funzione soddisfa la condizione (u, t, 0) = F (u, t) per ogni u Rn
e t [0, T ]. Se il metodo e definito da una formula di tipo (7.39), la condizione diventa
(u, u, t, 0) = F (u, t).
Un metodo consistente si dice di ordine p > 0 se, detta u1 la soluzione prodotta dal metodo
al primo istante t1 = t, si ha
I tre metodi a un passo discussi sopra sono consistenti; i metodi di Eulero (espicito ed implicito)
sono del primo ordine (p = 1), mentre il metodo dei trapezi e del secondo ordine (p = 2).
Esaminiamo ora quello che succede nei passi successivi. Ad ogni passo, si sovrappongono due
effetti (si veda la Figura 7.2):
ossia la soluzione del sistema differenziale che passa per il punto (tk , uk ) nel piano (t, u). Allora
possiamo scrivere lerrore al passo k + 1 come
La quantita ek+1 k
P R rappresenta la propagazione dellerrore u(tk ) u , presente allistante tk ,
lungo le traiettorie del sistema differenziale fino allistante tk+1 . Si puo dimostrare che si ha
kek+1
PR k e
Lt ku(t ) uk k, dove L e la costante di Lipschitz di F . Invece, ek+1 rappresenta il
k CR
nuovo errore creato dallo schema al passo k + 1, dunque kek+1 CR k = O(t p+1 ). Tenendo conto
Teorema 7.6.2 Sotto le ipotesi fatte su F , se il metodo numerico definito dalla (7.38) oppure
dalla (7.39) e di ordine p e se u e derivabile (p + 1)-volte in [0, T ], si ha
p+1
d u
max ku(tk ) u k CL,T t max
p+1 (t)
k p
,
1kK t[0,T ] dt
dove CL,T indica una costante dipendente solo da L, T e dal metodo numerico.
Si noti la dipendenza dellerrore anche dalla derivata (p+1)-esima di u; in altri termini, la qualita
dellapprossimazione dipende anche da come la soluzione esatta varia nellintervallo temporale
considerato.
Il teorema non soltanto garantisce la convergenza (teorica) del metodo, ossia il fatto che
la soluzione discreta generata dal metodo numerico tende alla soluzione esatta per t 0,
ma indica anche quale comportamento dellerrore dobbiamo attenderci al diminuire del passo
temporale. Precisamente, se la soluzione e sufficientemente regolare, ci aspettiamo che dividendo
t per 2 lerrore si riduca di un fattore 2p .
Questo comportamento viene in genere osservato in pratica per un certo intervallo di variabi-
lita del passo temporale, che pero non arriva fino a 0. Infatti, poiche le operazioni aritmetiche
vengono eseguite dallelaboratore con un numero finito di cifre decimali, la generazione e succes-
siva propagazione degli errori di arrotondamento porta ad un significativo deterioramento della
qualita dellapprossimazione, allorquando t scende al di sotto di un livello critico (dipenden-
te dalla precisione di macchina), ossia allorquando il numero di passi temporali necessario per
giungere al tempo finale T diventa eccessivamente elevato.
Bisogna inoltre osservare che la stima dellerrore data dal teorema non fornisce indicazioni
pratiche su come scegliere il passo temporale al fine di garantire che lerrore rimanga al di sotto di
7.6. METODI DI AVANZAMENTO IN TEMPO 133
u(t3 )
u3
u(t2 )
u(t1 ) u2
u1
u0
0 t 2t 3t
Figura 7.2: Propagazione del vecchio errore e creazione di nuovo errore nei primi tre passi del
metodo di Eulero esplicito
una soglia prefissata (tolleranza). Infatti, a secondo membro compare la soluzione esatta u, che e
precisamente lincognita del problema. Le tecniche di scelta automatica del passo temporale (ed
eventualmente dellordine del metodo) per il controllo dellerrore globale utilizzano opportune
stime a posteriori dellerrore prodotto a ogni passo temporale, ottenibili a partire soltando dalla
soluzione discreta fornita dal metodo. Tipicamente, tali tecniche si basano sul confronto tra due
diverse approssimazioni della soluzione esatta allo stesso istante temporale, luna piu precisa
dellaltra; esse vengono ottenute ad esempio avanzando con due passi temporali diversi, oppure
piu efficientemente con due metodi di ordine diverso opportunamente accoppiati. Per ulteriori
dettagli, si rimanda ai testi piu approfonditi di Calcolo Numerico.
le cui soluzioni sono zp (t) = ep t z0p . Poiche per ipotesi Re p < 0, si ha |zp (t)| 0 per t +,
per ogni p. Conseguentemente, per t +, kz(t)k 0, dunque anche kv(t)k 0 e quindi,
come annunciato, u(t) u .
Ha dunque senso chiedersi se, e sotto quali condizioni sul passo temporale t che qui sup-
porremo costante, un metodo numerico applicato al problema (7.40) generi una successione uk
convergente a u per k +. Possiamo ragionare equivalentemente sul problema (7.41); in
tal caso la successione v k generata dal metodo deve tendere a 0 per k +. Ancora una volta
ci limitiamo a considerare metodi a un passo.
Il metodo di Eulero esplicito, applicato al problema (7.41), diventa
v k+1 = vk + tAvk , k0;
passando alla variabile z = W 1 v e ragionando sulle singole componenti, cio equivale alle n
relazioni scalari, per 1 p n,
zpk+1 = zpk + tp zpk = (1 + tp )zpk , k0. (7.43)
Si ha dunque la soluzione esplicita
zpk = (1 + tp )k z0p , k0.
(Si presti attenzione al diverso significato dellindice k in questa formula: zpk denota una quantita
relativa al tempo tk , mentre (1 + tp )k indica, come duso, lelevamento alla potenza k-esima
del numero racchiuso in parentesi.) La condizione |zpk | 0 per k + equivale al fatto che
|1 + tp | < 1 .
7.6. METODI DI AVANZAMENTO IN TEMPO 135
2 1 0
REE
Figura 7.3: Regione di stabilita asintotica nel piano complesso del metodo di Eulero esplicito
il che e sempre possibile, grazie allipotesi Rep < 0 fatta sugli autovalori di A. Il metodo di Eu-
lero esplicito e dunque condizionatamente asintoticamente stabile, ossia e necessario soddisfare
questa condizione su t, detta condizione di stabilita asintotica, per ottenere il comportamen-
to desiderato sulle soluzioni discrete. Talvolta questa condizione puo risultare eccessivamente
restrittiva.
Nel caso notevole in cui la matrice A sia simmetrica, e dunque i suoi autovalori siano tutti
reali negativi, abbiamo tp int (REE ) se e solo se
2 < tp < 0 ;
Se la matrice A ha autovalori con ordini di grandezza molto diversi tra loro (ossia se e mal-
condizionata - nel linguaggio dei sistemi di equazioni differenziali si dice che il sistema e stiff ),
saremo vincolati ad avanzare con un passo temporale dettato dallautovalore di modulo piu
136 CAPITOLO 7. RICHIAMI E COMPLEMENTI
REI
0 1 2
Figura 7.4: Regione di stabilita asintotica nel piano complesso del metodo di Eulero implicito
grande, anche se il comportamento della soluzione esatta non lo richiederebbe. Nel successivo
Esempio 7.6.3 illustriamo questo spiacevole fenomeno.
Consideriamo ora il metodo di Eulero implicito. In luogo della relazione ricorsiva (7.43),
abbiamo ora
(1 tp )zpk+1 = zpk , k0,
Non vi sono dunque restrizioni nella scelta del passo temporale. Concludiamo che il metodo di
Eulero implicito e incondizionatamente asintoticamente stabile.
Infine, se consideriamo il metodo dei trapezi, abbiamo la relazione ricorsiva
t t
(1 p )zpk+1 = (1 + p )zpk , k0,
2 2
la cui soluzione e data da
!k
t
1+ 2 p
zpk = t
z0p , k0.
1 2 p
7.6. METODI DI AVANZAMENTO IN TEMPO 137
RCN
Figura 7.5: Regione di stabilita asintotica nel piano complesso del metodo dei trapezi
Esempio 7.6.3 Mostriamo su un semplice sistema differenziale di due equazioni in due inco-
gnite la natura talvolta inaccettabile della condizione di stabilita asintotica del metodo di Eulero
esplicito. Consideriamo il problema ai valori iniziali (7.41), con
1001 999
2 2
2
A= e v0 = .
999 1001 0
2 2
v1
v2
3/1000 t
Figura 7.6: Le componenti della soluzione del sistema stiff dellEsempio 7.6.3
Esiste quindi un transitorio iniziale molto piccolo, dellordine di 1/1000 di secondo, seguito da
una evoluzione piu lenta, sulla scala dei secondi (si veda la Figura 7.6).
Orbene, se si avanza in tempo con il metodo di Eulero esplicito, dobbiamo rispettare la
condizione di stabilita asintotica (7.45), vale a dire
2 1
t < = ,
max(| 1|, | 1000|) 500
non soltanto nel transitorio, ma per tutta la simulazione, altrimenti il calcolo va rapidamente in
overflow.
Luso del metodo di Eulero implicito o dei trapezi permette invece di variare il passo, sceglien-
dolo dellordine di 1/500 durante il transitorio ma poi aumentandolo via via che la soluzione va
verso lo stato stazionario.
Il primo metodo della famiglia e il metodo di Eulero esplicito (RK1). Un metodo del secondo
ordine (RK2) e il metodo di Heun, che scriviamo come
uk+1 = uk + t 12 F 1 + 21 F 2 , k0, (7.46)
F 1 = F (uk , tk ) ,
F 2 = F (uk + tF 1 , tk + t) .
con
F 1 = F (uk , tk ) ,
F 2 = F (uk + 12 tF 1 , tk + 12 t) ,
F 3 = F (uk + 34 tF 2 , tk + 34 t) .
Infine, un metodo del quarto ordine (RK4) classico e di uso assai diffuso e dato da
uk+1 = uk + t 16 F 1 + 31 F 2 + 31 F 3 + 13 F 4 , k0, (7.48)
con
F 1 = F (uk , tk ) ,
F 2 = F (uk + 21 tF 1 , tk + 12 t) ,
F 3 = F (uk + 12 tF 2 , tk + 12 t) ,
F 4 = F (uk + tF 3 , tk + t) .
Tale metodo viene spesso (as esempio in MATLAB) associato ad un particolare metodo del
quinto ordine, dovuto a Fehlberg, che con una sola valutazione aggiuntiva della funzione F
permette di stimare il passo t = tk ad ogni istante tk , in modo da soddisfare una prescritta
tolleranza locale sullerrore. Il metodo risultante, con passo adattato e quindi variabile, viene
indicato con RK45.
Le regioni di stabilita asintotica dei metodi RK1-RK4 visti sopra sono illustrati nella Figura
7.7.
Ricordiamo infine che esistono famiglie di metodi di tipo Runge-Kutta impliciti.
1.732 2.374
RRK2
2 0 RRK3
2.513 0
1.732
2.374
2.937
RRK4
2.785 0
2.937
Figura 7.7: Regioni di stabilita asintotica nel piano complesso di alcuni metodo di Runge-Kutta
espliciti: RK2 (in alto a sinistra), RK3 (in alto a destra), RK4 (in basso a sinistra); RK1-RK4
sovrapposte (in basso a destra)
Il primo metodo della famiglia e il metodo di Eulero implicito; il metodo del secondo ordine e
3 k+1
2u 2uk + 21 uk1 = tF (uk+1 , tk+1 ) , k1, (7.49)