Sei sulla pagina 1di 64

 

 
Dispense a cura del Prof. G. Sciortino 

MECCANICA COMPUTAZIONALE 
Indice
Prefazione
1 CLASSIFICAZIONE DELLE EQUAZIONI ALLE
DERIVATE PARZIALI.............................................................................4
1.1 Equazioni alle derivate parziali del secondo ordine.................................4
1.2 Sistemi del primo ordine in due variabili................................................5
2 METODI VARIAZIONALI........................................................................9
2.1 Elementi di calcolo delle variazioni........................................................9
2.2 Formulazione debole e formulazione variazionale di
problemi ellittici....................................................................................11
2.3 Principi variazionali nei problemi agli
autovalori.............................................................................................15
2.4 Metodi variazionali approssimati........................................................16
2.4.1 Metodo di Rayleigh-Ritz.............................................................16
2.4.2 Metodo di Galerkin.....................................................................17
2.4.3 Metodo di Rayleigh-Ritz nei problemi agli
autovalori.....................................................................................18
3 ESEMPI APPLICATIVI..........................................................................20
3.1 Equazione della membrana.................................................................20
3.1.1 Deformazione della membrana sotto l’azione
di un carico ripartito....................................................................20
3.1.2 Autovibrazioni della membrana..................................................23
3.2 Svuotamento a potenziale di un serbatoio...........................................27
3.3 Oscillazioni trasversali di una trave.....................................................33
3.3.1 Metodo di Rayleigh-Ritz per la trave.........................................38
3.4 Equazione della piastra.......................................................................39
3.4.1 Deformazione della piastra sotto l’azione
di un carico ripartito.....................................................................39
3.4.2 Autovibrazioni della piastra.........................................................41
4 APPENDICE:
RICHIAMI DI MATEMATICA E APPROFONDIMENTI........................45
4.1 Formule di Green-Gauss......................................................................45
4.2 Ortogonalità degli autovettori nei problemi
generalizzati agli autovalori.................................................................45
4.3 Ricerca del minimo assoluto di J come minimo vincolato..................46
4.4 Ricerca degli autovalori successivi al primo col metodo di
Rayleigh-Ritz.......................................................................................46
4.5 Trasformata di Fourier: interpretazione energetica............................47
4.6 Principio di Minima Azione................................................................48
4.7 Deduzione dell’equazione della membrana dal
Principio di Minima Azione.................................................................49
4.8 Deduzione dell’equazione delle oscillazioni trasversali di piccola
ampiezza di una trave mediante il Principio di Minima Azione..........51
5 METODI ALLE DIFFERENZE FINITE.................................................53
5.1 Considerazioni generali......................................................................53

1
5.2 Analisi degli schemi numerici..............................................................54
5.2.1 Consistenza.................................................................................54
5.2.2 Convergenza................................................................................56
5.2.3 Stabilità......................................................................................57
5.3 Schemi espliciti e schemi impliciti......................................................59
5.4 Condizione di stabilità di Von Neumann............................................59
5.5 Dissipazione e Dispersione.................................................................61
Bibliografia..............................................................................................63

2
Prefazione
Il presente testo raccoglie le lezioni da me tenute per il corso di Meccanica
Computazionale nell’ambito della Laurea Magistrale in Ingegneria Civile per la
Protezione dai Rischi Naturali. Il settore scientifico disciplinare in cui si inserisce
tale corso è MAT/07 (Fisica Matematica).
L’obiettivo di tale insegnamento è quello di fornire allo studente della Laurea
Magistrale gli elementi di base per inquadrare e risolvere, dal punto di vista
teorico e computazionale, alcuni problemi fisico-matematici che si incontrano sia
nell’ingegneria strutturale che in quella idraulica. I metodi numerici utilizzati
sono quelli variazionali approssimati e quelli alle differenze finite.
La scelta del contesto applicativo si focalizza su problemi che, sebbene sem-
plici dal punto di vista della geometria che li descrive, permettano di eviden-
ziare aspetti dinamici fondamentali per un corretto inquadramento concettuale
di problemi più complessi. Essendo il corso destinato a studenti di ingegneria,
molti aspetti matematici sono stati volutamente semplificati, a volte a scapito
del rigore.
Infine tutti i problemi applicativi sono stati risolti utilizzando il programma
di calcolo simbolico e numerico Mathematica. Tale strumento permette una
implementazione rapida e compatta dei programmi e, tramite le efficacissime
animazioni, fornisce uno strumento didattico versatile e stimolante per la for-
mazione di una corretta immagine mentale dei problemi affrontati.

Roma Febbraio 2009

Giampiero Sciortino

3
G. Sciortino - Meccanica Computazionale

1 Classificazione delle equazioni alle derivate parziali


1.1 Equazioni alle derivate parziali del secondo ordine
Considereremo equazioni lineari o quasi lineari, in cui i coefficienti dell’equazione
possono dipendere dalla funzione incognita (ma non dalle sue derivate) e dalle
variabili indipendenti. La struttura della generica equazione nella incognita:
u = u(x) ∈ R, x+(x1 , x2 , ..., xn ) ∈ Rn sarà:
n
X n
X ∂u
∂2u
aij + ai + au = f (1)
i,j=1
∂xi ∂xj i=1
∂xi

2 2
Stante la ∂x∂i ∂x
u
j
= ∂x∂j ∂x
u
i
si può supporre senza scapito di generalità che la
matrice A = ((aij )) dei coefficienti dei termini del secondo ordine sia simmetrica.
I suoi n autovalori saranno allora tutti reali. Denotiamo con n+ , n− , n0 rispetti-
vamente il numero di quelli positivi, negativi e nulli in un certo x = x0 , u = u0 .
Ovviamente n = n+ + n− + n0 . Diremo allora che in x = x0 , u = u0 l’equazione
(1) è di tipo (per brevità con ∧, ∨ indicheremo rispettivamente la congiunzione
”e” e la disgiunzione ”oppure”):

Ellittico se: (n+ = n) ∨ (n− = n)(⇒ n0 = 0)


Iperbolico se: (n+ = n − 1 ∧ n− = 1) ∨ (n− = n − 1 ∧ n+ = 1)(⇒ n0 = 0)
Ultra Iperbolico se: (n0 = 0) ∧ ((1 < n+ < n − 1) ∨ (1 < n− < n − 1))
Parabolico se: n0 > 0(⇒ det(A) = 0)

Si chiama superficie caratteristica una superficie di equazione z(x) =0, che


verifica la relazione
n
X ∂z ∂z
(A.∇z, ∇z) = aij =0 (2)
i,j=1
∂xi ∂xj

dove (•, •) indica il prodotto scalare.


Nel caso in cui n = 2, ossia il problema sia in due variabili la equazione (1)
è di tipo:
∂2u ∂2u ∂2u
a 2 + 2b + c 2 + termini.10 .ordine = f (3)
∂x ∂x∂y ∂y
Se alla equazione (3) associamo il problema di Cauchy, consistente nell’assegnare
i valori di u e della sua derivata in direzione normale (∂u/∂n) ad un’assegnata
curva Γ, si può dimostrare che tale problema è indeterminato solo su delle linee
eccezionali dette linee caratteristiche che soddisfano l’equazione differenziale
ordinaria ottenibile dalla (2)
µ ¶µ ¶
a b zx
( zx zy ) =0
b c zy
(4)
azx2 + 2bzx zy + czy2 = 0

4
G. Sciortino - Meccanica Computazionale

Passando da una relazione implicita z(x, y) = 0 ad una esplicita y = y(x) ⇒


d
dx z(x, y(x))= 0 ⇒ −zy dy/dx = zx ed inserendo nelle (4), segue l’equazione
differenziale ordinaria delle linee caratteristiche:

a(dy/dx)2 − 2b(dy/dx) + c = 0 (5)

Le precedenti forniranno una famiglia di due curve reali e distinte, coinci-


denti, complesse coniugate, rispettivamente se b2 − ac T 0. Poichè la matrice A
associata alla equazione (3) è:
µ ¶
a b
A=
b c

segue che:

det(A − λI) = λ2 √ − T rλ + ∆ = 0
2
λ1,2 = T r± T2r −4∆
T r + a + c, ∆ + ac − b , T r − 4∆ = (a − c)2 + b2 ≥ 0
2 2

Supposto ad es. T r > 0 segue che se ∆ > 0 ⇔ b2 − ac < 0 ⇒ λ1,2 > 0


ed il sistema è Ellittico (entrambi gli autovalori sono positivi). Se ∆ = 0
segue che un λ è nullo e il sistema è Parabolico. Infine se ∆ < 0 un auto-
valore è positivo e uno negativo e il sistema è Iperbolico. Se T r = 0 ⇒ a =
−c ⇒ ∆ = b2 − ac = b2 + a2 > 0 ed il sistema è ellittico. (Analoghe consider-
azioni se T r < 0). Da quanto mostrato, segue che le equazioni Ellittiche in due
variabili sono caratterizzate da una famiglia di linee caratteristiche complesse
coniugate, le Iperboliche da una famiglia di linee reali e distinte, le Paraboliche
da una famiglia di linee reali e coincidenti. Le equazioni ellittiche modellano
in genere processi stazionari. Le Iperboliche traducono in genere principi di
conservazione con reversibilità temporale. Le paraboliche processi che evolvono
nel tempo in modo unidirezionale, nel senso della irreversibilità. Una inversione
della direzione del tempo porta a problemi mal posti.

1.2 Sistemi del primo ordine in due variabili

Consideriamo il sistema di N equazioni in due variabili indipendenti x, y:


∂U ∂U
A. + B. =C (6)
∂x ∂y
dove:

U = [U1 (x, y), U2 (x, y), ...UN (x, y)]T


A = ((Aij )), B = ((Bij ))
T
C = [C1 , C2 , ...CN ]
i, j = 1, 2, ...N

5
G. Sciortino - Meccanica Computazionale

La classificazione del sistema (6) si effettua in relazione alle proprietà del seguente
problema generalizzato agli autovalori (X + [x1, x2, ...xN ]T ):

A.X = λB.X
Pn (λ) + det(A − λB) (7)

supponendo che almeno una delle matrici A, B sia non singolare. Suppor-
remo nel seguito che det B 6= 0.
Diremo allora che il sistema (6) è:
ellittico se gli zeri di Pn (λ) = 0 sono tutti complessi
iperbolico se gli zeri di Pn (λ) = 0 sono tutti reali e il problema agli auto-
valori (7) ammette una base di autovettori
parabolico se gli zeri di Pn (λ) = 0 sono tutti reali e il problema agli auto-
valori (7) non ammette una base di autovettori.
Se le matrici A e B e il vettore C dipendono da x e y il sistema (6) è
lineare. Se dipendono anche da U il sistema è detto quasi lineare. Nel primo
caso la classificazione può essere punto-dipendente nel secondo anche soluzione-
dipendente.
Nel caso di sistema iperbolico, (denoteremo in seguito con t la variabile y
(variabile tempo)) la (7) diventa per ipotesi di non singolarità di B:

B −1 .A.X = λX (8)

cosicchè nella base degli autovettori la matrice D = B −1 .A è diagonale:


e =Λ
D (9)

dove Λ = diag(λ1 , λ2 , ..., λN ) è la matrice diagonale che contiene gli auto-


valori.
Posto allora:
e
D = B −1 .A = T −1 .D.T (10)
dove T è una matrice non-singolare che fa passare dalla base degli autovettori
alla base canonica cui si riferiscono le componenti di X. Il significato invece della
matrice T −1 è immediato tenendo conto che, la sua i−esima colonna, contiene
le componenti dell’i−esimo autovettore del problema (8).
Il sistema (6) moltiplicando a sinistra per B −1 diventa:

∂U ∂U
B −1 .A. + = B −1 .C (11)
∂x ∂t
e quindi per le (10):

e ∂U ∂U ∂U ∂U
T −1 .D.T. + = B −1 .C ⇒ Λ.T. + T. = T.B −1 .C (12)
∂x ∂t ∂x ∂t
Consideriamo adesso alcuni casi particolari.

6
G. Sciortino - Meccanica Computazionale

Se le matrici A e B sono costanti allora lo è anche T e possiamo effettuare


un cambio della variabile dipendente U ponendo:

e
e = T.U ⇒ ∂ U = T. ∂U
U
∂(t, x) ∂(t, x)

cosicchè le (12) diventano:

e
∂U e
∂U
+ Λ. = T.B −1 .C (13)
∂t ∂x
o anche scritte per componenti:

fi
∂U ei
∂U
+ λi ei /Dt = (T.B −1 .C)
= D(i) U i
∂t ∂x
dove D(i) (·)/Dt + ∂(·)/∂t + λi ∂(·)/∂x rappresenta la derivata lungo la i −
h iT
esima linea caratteristica di pendenza dx/dt = λi , U e = U e1 , U
e2 , ..., U
eN ed
essendo (T.B −1 .C)i la i − esima componente del vettore T.B −1 .C.
Qualora nelle precedenti C = 0, segue che le U fi non variano lungo le cor-
rispondenti linee caratteristiche di pendenza dx/dt = λi , e il sistema può essere
integrato analiticamente ottenendo:
ei = fi (x − λi t)
U (14)
i = 1, 2, ..., N

con fi funzioni arbitrarie di classe C 1 .


Le precedenti ci dicono che le Uei (x, t) non variano lungo le linee x−λi t =cost,
che sono le linee caratteristiche del sistema e le Uei (x, t) costituiscono quindi degli
invarianti.
Talvolta le matrici A e B non sono costanti ma dipendono unicamente da
U, come in alcuni problemi quasi lineari. In tal caso, se sussiste la possibilità
di porre (tale possibilità non è vera in generale):

∂U ∂F(U) ∂U ∂F(U) ∂F(U)


T. = , T. = ⇔T = (15)
∂x ∂x ∂t ∂t ∂U
F(U) + [F1 [U],F2 [U], ...,FN [U]]T

le (12) diventano:

∂F(U) ∂F(U)
+ Λ. = T.B −1 .C (16)
∂t ∂x
o anche scritte per componenti:

∂Fi (U) ∂Fi (U)


+ λi = D(i) Fi /Dt = (T.B −1 .C)i
∂t ∂x

7
G. Sciortino - Meccanica Computazionale

Anche in tal caso se C = 0, otteniamo che le Fi [U] non variano lungo le


linee caratteristiche di equazione dx/dt = λi e quindi sono degli invarianti detti
invarianti di Riemann. In tal caso però gli autovalori λi dipendono da U e quindi
le linee caratteristiche non sono tracciabili a priori. La possibilità comunque di
costruire N invarianti è legata alla possibilità di soddisfare le (15), ossia che la
matrice T sia lo Jacobiano di qualche F(U).
Se comunque una certa equazione del sistema (12) con C = 0, diciamo l’i −
esima equazione:
N
X N
X
Ti,j (∂Uj /∂t + λi ∂Uj /∂x) = Ti,j D(i) Uj /Dt = 0
j=1 j=1

può essere scritta come:

∂Fi [U] ∂Fi [U]


+ λi = D(i) Fi /Dt = 0
∂t ∂x
allora Fi [U] è un invariante associato alla caratteristica di pendenza dx/dt =
λi .
Nel caso più generale, il sistema (12) può essere semplicemente scritto facendo
intervenire le derivate delle Uj lungo le linee caratteristiche nel seguente modo:
N
X
Ti,j D(i) Uj /Dt = (T.B −1 .C)i
j=1

i = 1, 2, ..., N

8
G. Sciortino - Meccanica Computazionale

2 Metodi Variazionali
2.1 Elementi di calcolo delle variazioni
Sia Ω ⊂ Rn un insieme aperto (campo). In Ω definiamo il seguente spazio di
funzioni, detto spazio delle funzioni a quadrato sommabile in Ω così definito:
½ ¯ Z ¾
¯
2 ¯ n 2
L (Ω) = u(x) ¯x ∈ R , u(x) ∈ R, u(x) dΩ < ∞

Tale spazio è uno spazio vettoriale sul campo dei reali, nel quale possiamo
definire il seguente prodotto scalare fra due suoi elementi:
Z
(u(x), v(x)) + u(x)v(x)dΩ

Con Ω = Ω ∪ ∂Ω indicheremo la chiusura di Ω, ossia l’unione con la sua


frontiera.
Una applicazione J, che ad ogni funzione u appartenente ad un assegnato
spazio A, associa un numero reale J[u], si chiama funzionale. In simboli:

J :A→R
u(x) → J[u]

In molti problemi, A ⊂L2 (Ω), ossia A è un sottoinsieme dello spazio vetto-


riale L2 (Ω). Tale applicazione è un funzionale di una sola variabile u. Qualora
l’applicazione sia del tipo:

J : A1 × A2 × ... × AM → R
(u1 (x), u2 (x), ..., uM (x)) → J[u1 , u2 , ..., uM ]

dove uj (x) ∈ Aj , j = 1, 2, ..., M, si parla di funzionale di più variabili.


Per definire correttamente molti problemi applicativi è utile introdurre i
seguenti sottospazi vettoriali di L2 (Ω) :
C k (Ω) = l’insieme delle funzioni di L2 (Ω) che hanno derivate continue in Ω
fino all’ordine k = 0, 1, 2, ......
H m (Ω) =l’insieme delle funzioni di L2 (Ω) che hanno derivate fino all’ordine
m = 1, 2, , 3......appartenenti ancora a L2 (Ω).
Andiamo ora a definire il concetto di variazione di un funzionale. In sostanza
vogliamo calcolare la variazione che subisce il funzionale quando si passa da una
funzione u ad un’altra funzione u + ∆u, ossia J[u + ∆u] − J[u]. Per motivi che in
seguito saranno chiari, conviene scrivere ∆u = v, dove è uno scalare e v una
funzione. Supponendo come abbiamo detto che il funzionale J sia definito in A,
non è affatto detto che se u, v ∈ A allora u + v ∈ A (questo avviene solo se A
è uno spazio vettoriale). Per essere allora sicuri che u + v ∈ A, introduciamo
un insieme M (che si può dimostrare essere uno spazio vettoriale) così definito:

M = {v(x) |u + v ∈ A, ∀u ∈ A, ∀ ∈ R }

9
G. Sciortino - Meccanica Computazionale

Come vedremo in alcuni problemi, quando A è un sottospazio vettoriale di


L2 (Ω), allora si può sempre supporre M = A, mentre in altri problemi i due
insiemi sono distinti.
Se esiste il seguente limite:
¯
J[u + v] − J[u] d ¯¯
lim = J[u + v], ∀v ∈ M (17)
→0 d ¯ =0

chiameremo tale limite la variazione prima di J nel punto u in direzione v e


la indicheremo con la notazione δJ[u; v]. Analogamente a quanto avviene per le
funzioni, si può dimostrare che, se in u0 il funzionale J ha un massimo o minimo
relativo e se in u0 ammette variazione prima, allora:

δJ[u0 ; v] = 0, ∀v ∈ M (18)

Nel caso di funzionale di più variabili, si definisce una variazione prima


parziale rispetto ad ogni variabile uk k = 1, 2, ...M, ponendo:

δ k J[u1 , u2 , ..., uM ; vk ] +
J[u1 , u2 , ..uk + k vk , ..uM ] − J[u1 , u2 , ..uk , ..uM ]
lim , ∀vk ∈ Mk
k →0 k

Nel caso di funzioni ordinarie, sussiste la proprietà che la derivata lungo una
assegnata direzione è data dal prodotto scalare del suo gradiente per il versore in
quella direzione. Anche per i funzionali sussiste una proprietà analoga. Si può
infatti dimostrare che, sotto determinate condizioni, δJ[u; v], che altro non è che
la derivata di J nella direzione v, può essere scritto come δJ[u; v] = (G, v), dove
G è una funzione (dipendente da u) appartenente a L2 (Ω). Per quanto detto è
naturale definire tale funzione il gradiente di J e scrivere

δJ[u; v] = (∇J[u], v) (19)

Ora, per la (18), se in u0 il funzionale J ha un massimo o minimo relativo


si ha: (∇J[u0 ], v) = 0, ∀v ∈ M ⇒ ∇J[u0 ] = 0. Tale equazione prende il nome
di equazione di Eulero associata al funzionale J[u]. Quando, come vedremo nel
prossimo capitolo, ad una equazione alle derivate parziali si associa un equiv-
alente problema variazionale, in sostanza si definisce il funzionale in modo che
l’equazione di Eulero ad esso associata sia l’equazione alle derivate parziali di
partenza.
Un caso particolarmente semplice di funzionale con diverse applicazioni in-
teressanti, è quello definito dalla relazione:
Z x2
J[u] = f (x, u(x), u0 (x))dx (20)
x1

dove f (x, u, u0 ) è una assegnata funzione e x1 ,x2 sono assegnati. Il problema


consiste nel trovare una funzione u(x) ∈ A =C 1 [x1 , x2 ] che minimizzi o mas-
simizzi J[u] e che passi per i punti (x1 , u1 ),(x2 , u2 ). Imponendo l’annullamento

10
G. Sciortino - Meccanica Computazionale

della variazione prima del funzionale, segue:


¯ ¯ Z x2
d ¯¯ d ¯¯ 0

¯ J[u + v] = ¯ f (x, u + v, u0 + v )dx = 0


d =0 d =0 x1
© ª
essendo v ∈ M = v(x) ∈ C 1 [x1 , x2 ] |v(x1 ) = v(x2 ) = 0 una arbitraria fun-
zione che si annulla in x = x1 , x2 . Eseguendo la derivazione dell’integrale
rispetto a e ponendo = 0 segue:
Z x2
0
fu (x, u, u0 )v + fu0 (x, u, u0 )v dx =
x1
Z x2
d
= (fu (x, u, u0 ) − fu0 (x, u, u0 ))vdx = (∇J[u], v) = 0
x1 dx
0
avendo integrato per parti il termine fu0 (x, u, u0 )v e sfruttato l’annullamento
di v in x1 , x2 . Per l’arbitrarietà di v, segue:
d
∇J[u] = fu (x, u, u0 ) − fu0 (x, u, u0 ) = 0 (21)
dx
o anche eseguendo la derivazione rispetto a x:

fu (x, u, u0 ) − fxu0 (x, u, u0 ) − fuu0 (x, u, u0 )u0 − fu0 u0 (x, u, u0 )u00 = 0 (22)

che è l’equazione di Eulero associata al funzionale (20). Essendo una equazione


differenziale del secondo ordine, la si può integrare richiedendo all’incognita u(x)
il passaggio per i punti (x1 , u1 ),(x2 , u2 ) e trovando così l’eventuale estremante.
Nel caso particolare in cui la f (x, u, u0 ) non dipenda da x, ossia sia del tipo
f (u, u0 ), l’equazione di Eulero (22) si riduce a:

fu (u, u0 ) − fuu0 (u, u0 )u0 − fu0 u0 (u, u0 )u00 = 0

da cui moltiplicando per u0 :


d
fu (u, u0 )u0 − fuu0 (u, u0 )u02 − fu0 u0 (u, u0 )u0 u00 = [f (u, u0 ) − u0 fu0 (u, u0 )] = 0
dx
Il termine fra parentesi quadre deve quindi essere costante, ottenendo così
l’equazione del prim’ordine dipendente dal parametro c:

f (u, u0 ) − u0 fu0 (u, u0 ) = c (23)

2.2 Formulazione debole e formulazione variazionale di


problemi ellittici
Sia Ω ⊂ Rn un campo limitato dotato di una frontiera ∂Ω = SD ∪ SN costituita
da due parti.

11
G. Sciortino - Meccanica Computazionale

Consideriamo il seguente problema ellittico:




⎪ −∇ · (p(x)∇u) + q(x)u = f (x) in Ω

u = gD (x) in SD
(24)

⎪ ∂u/∂n = gN (x) in SN

p(x) > 0, q(x) ≥ 0, ∀x ∈ Ω, p(x) ∈ C 1 (Ω), q(x) ∈ C(Ω)

ossia determinare una funzione u ∈ C 2 (Ω)∩ C 1 (Ω ∪ SN ) ∩ C(Ω) che in Ω


verifichi l’equazione in prima riga del problema (24) e che sulla sua frontiera
verifichi le condizioni imposte a riga due e tre, rispettivamente di tipo Dirichlet
e di tipo Neumann (n è la normale esterna). Il problema (24) è sufficientemente
generale da determinare molti problemi di interesse applicativo. A titolo di
esempio, scegliendo p(x) = 1, q(x) = 0, f (x) = 0 otteniamo una equazione di
Laplace, con p(x) = 1, q(x) = 0,una equazione di Poisson. Anche sulle condizioni
al contorno assumendo ad esempio SD = ∅ ⇒ ∂Ω = SN , otteniamo condizioni
solo di tipo Neumann, oppure assumendo SN = ∅ ⇒ ∂Ω = SD solo di tipo
Dirichlet.
Per introdurre il concetto di soluzione debole del problema (24) trasformiamo
questo problema differenziale in un problema integrale. Moltiplichiamo allora
entrambi i membri della prima equazione del problema (24) per una arbitraria
funzione v(x) e integriamo sul campo Ω ottenendo:
Z Z
−∇ · (p(x)∇u)v + q(x)uv dΩ = f (x)v dΩ (25)
Ω Ω

Applicando le formule di Green-Gauss (vedi Appendice) possiamo scrivere


(con la convenzione di sommatoria per cui due indici ripetuti vanno sommati):
Z Z
∂ ∂u
−∇ · (p(x)∇u)v dΩ = − (p(x) )v dΩ =
Ω Ω ∂xi ∂xi
∙Z Z ¸
∂u ∂u ∂v
− p(x) ni v dS − p(x) dΩ = (26)
∂Ω ∂xi ∂xi ∂xi
Z ZΩ
∂u
− p(x) v dS + p(x)∇u · ∇v dΩ
∂Ω ∂n Ω

cosicchè la (25) diventa


Z Z Z
∂u
p(x)∇u · ∇v + q(x)uv dΩ − p(x) v dS = f (x)v dΩ (27)
Ω ∂Ω ∂n Ω

Lasciando v del tutto arbitraria non si andrebbe molto oltre la (27). Facendo
invece appartenere sia u che v ad opportuni spazi la (27) può essere ulteriormente
trasformata. Siano allora:
© ª
A = u ∈ H 1 (Ω) |u = gD in SD
(28)
© 1
ª
M = v ∈ H (Ω) |v = 0 in SD

12
G. Sciortino - Meccanica Computazionale

Facendo muovere u e v in tali spazi, segue che:


Z Z Z
∂u ∂u ∂u
p(x) v dS = p(x) v dS + p(x) v dS =
∂Ω ∂n ∂n ∂n
ZSD SN

p(x)gN (x)v dS
SN

in virtù delle definizioni (28) e della condizione di Neumann nel problema


(24) sulla frontiera SN . Se dunque una funzione u soddisfa il problema (24),
allora soddisferà anche l’equazione integrale:

K[u, v] = F [v], ∀v ∈ M (29)

dove si è posto per brevità:


Z Z Z
K[u, v] + p(x)∇u · ∇v + quv dΩ, F [v] + pgN v dS + f v dΩ (30)
Ω SN Ω

Una funzione u ∈ A e che soddisfa la (29) si dice soluzione debole del prob-
lema (24), mentre la (29) formulazione debole del problema (24). Evidentemente
ogni soluzione classica del problema (24) è anche una soluzione debole, ma in
generale non è vero il viceversa. Si può però dimostrare che per tutti i problemi
standard tipo equazione di Laplace, Poisson, e via dicendo, definiti in domini
ragionevoli, soluzioni deboli e classiche coincidono. Vi sono però alcuni prob-
lemi di interesse fisico che impostati classicamente sono mal posti, mentre la
formulazione debole è ben posta e dunque è l’unica possibile.
Vediamo ora sotto quali condizioni si può passare da una formulazione debole
tipo la (29) ad una formulazione di tipo variazionale. Supponiamo allora che
siano verificate le condizioni:
½
K[u, v] = K[v, u]
∀u ∈ A, ∀v ∈ M (31)
K[u, u] ≥ 0

Definendo allora il seguente funzionale:

J[u] + K[u, u] − 2F [u] (32)

si può dimostrare che la sua variazione prima è data da:

δJ[u; v] = 2(K[u, v] − F [v]) (33)

cosicchè se u0 è una soluzione debole soddisfacente la (29) allora u0 è un


punto stazionario per il funzionale J[u], ossia annulla la sua variazione prima
(non è detto che sia necessariamente un massimo o minimo relativo). Nelle
ipotesi (31) dunque formulazione debole e formulazione variazionale coincidono.
In alcuni casi invece solo la formulazione debole è possibile. La formulazione
variazionale offre però il vantaggio di risolvere il problema (24) trasformandolo
in un problema di ottimizzazione consistente nella ricerca di una funzione che
massimizza o minimizza (oppure rende stazionario) un certo funzionale.

13
G. Sciortino - Meccanica Computazionale

Verifichiamo ora come esercizio che, costruendo un funzionale secondo i det-


tami della (32) per il problema (24), la sua variazione prima soddisfa effettiva-
mente la (33). Dalla (32) e dalle (30) segue:
Z Z Z
J[u] = (p∇u · ∇u + qu2 )dΩ − 2( pgN u dS + f u dΩ) (34)
Ω SN Ω

segue che:
Z
J[u + εv] = p∇(u + εv) · ∇(u + εv) + q(u + εv)2 dΩ−

Z Z
2( pgN (u + εv) dS + f (u + εv) dΩ) =
SN Ω
∙Z Z Z ¸
J[u] + 2ε p∇u · ∇v + quv dΩ − ( pgN v dS + f v dΩ) + O( 2 ) =
Ω SN Ω
J[u] + 2ε [K[u, v] − F [v]] + O( 2 )

e quindi passando al limite:

J[u + v] − J[u]
δJ[u; v] = lim = 2(K[u, v] − F [v])
→0

si ottiene la (33).
Dalla espressione del funzionale (34) si ricavano facilmente i funzionali asso-
ciati ai seguenti problemi (tutti di particolare interesse applicativo) deducibili
dal problema (24) come particolari sottocasi (il terzo problema non è immedi-
atamente deducibile dal (24) ma viene comunque riportato):

−∇2 u = f in Ω ⊂ Rn (35)
u = g in S = ∂Ω

a cui è associato l’equivalente problema di minimizzazione:


Z
Ja [u] = (∇u · ∇u − 2f u)dΩ

© ª
da minimizzare in A = u ∈ H 1 (Ω) |u = g in S

−∇2 u = f in Ω ⊂ Rn (36)
∂u/∂n = g in S = ∂Ω

Z Z
Jb [u] = (∇u · ∇u − 2f u)dΩ − 2 gudS
Ω S
da minimizzare in A = H 1 (Ω)

14
G. Sciortino - Meccanica Computazionale

−∇2 u = f in Ω ⊂ Rn (37)
∂u/∂n + pu = g in S = ∂Ω

Z Z
Jc [u] = (∇u · ∇u − 2f u)dΩ + (pu2 − 2gu)dS
Ω S
da minimizzare in A = H 1 (Ω)
Relativamente al problema alla Neumann (36), si può dimostrare che esso
ammette infinite soluzioni che differiscono fra loro per una costante arbitraria,
purché sia soddisfatta una condizione necessaria e sufficiente di risolubilità che
può essere così ricavata. Integrando l’equazione su Ω e applicando le formule di
Green-Gauss al primo membro segue:
Z Z Z Z Z
∂u
−∇2 udΩ = −∇ · (∇u)dΩ = −∇u · nd∂Ω = − d∂Ω = f dΩ
Ω Ω ∂Ω ∂Ω ∂n Ω

e quindi in virtù della condizione al contorno, segue :


Z Z
gd∂Ω = − f dΩ (38)
∂Ω Ω

che è la cercata condizione necessaria e sufficiente di risolubilità del problema


(36). In particolare se f = 0 (equazione di Laplace) si ha:
Z
gd∂Ω = 0 (39)
∂Ω

2.3 Principi variazionali nei problemi agli autovalori


Consideriamo il seguente problema agli autovalori:

⎨ −∇ · (p(x)∇u) + q(x)u = λr(x)u(x) in Ω
u = 0 in S + ∂Ω (40)

p(x) > 0, q(x) ≥ 0, r(x) > 0 , p(x) ∈ C 1 (Ω), q(x), r(x) ∈ C(Ω)

consistente nel trovare una funzione u ∈ C 2 (Ω) ∩ C(Ω) (autofunzione) non


identicamente nulla e un numero λ (autovalore) che soddisfano le (40).
Si può dimostrare che tutti gli autovalori del precedente problema, possono
essere numerati e ordinati secondo la sequenza:
λ1 ≤ λ2 ≤ λ3 ≤ ......
e che, dette un , um due autofunzioni associate agli autovalori λn , λm ,sussiste
la proprietà di ortogonalità (con opportuna normalizzazione delle autofunzioni):
Z ½
1/2 1/2 1 se n = m
(r un , r um ) = r(x)un (x)um (x)dΩ = (41)
Ω 0 se n 6= m

15
G. Sciortino - Meccanica Computazionale

Al problema (40) associamo il seguente funzionale, detto quoziente di Rayleigh:


R
(p∇φ · ∇φ + qφ2 )dΩ
J[φ] + Ω R (42)

rφ2 dΩ

Si può allora dimostrare che il funzionale (42) gode delle seguenti proprietà:


⎪ λ1 = min J[φ] = min J[φ]

⎨ φ∈A0 −{0} φ∈A0 ∩L

©λk = J[u k ], k = 1, 2, ....... ª (43)




⎪ A 0 +© φ ∈ H 1
(Ω) ¯ |φ = 0 in S = ∂Ωª

L + φ ∈ L2 (Ω) ¯(r1/2 φ, r1/2 φ) = 1

ossia il più piccolo autovalore λ1 è il valore minimo che assume il funzionale


J[φ] al variare di φ in A0 escludendo la funzione identicamente nulla e il valore
che assume J[φ] sulla generica autofunzione uk del problema (40) fornisce il
corrispondente autovalore λk , come si verifica immediatamente moltiplicando
per u l’equazione del problema (40) e integrando su Ω. Si verifica inoltre che
2
J[σφ] = σ σJ[φ]2 = J[φ] (ossia il funzionale è omogeneo di grado zero). Tale
proprietà garantisce da un lato che che la ricerca del minimo di J[φ] in A0 − {0}
è equivalente alla ricerca del minimo del numeratore della (42) col vincolo che il
denominatore valga uno (vedi Appendice), dall’altro che la relazione λk = J[uk ]
non presenti ambiguità, dato che le autofunzioni sono definite a meno di un
fattore moltiplicativo.
Infine ogni λk (k = 2, 3, ...) costituisce un minimo vincolato per J[φ] nel
senso che:

λk = min J[φ] (44)


φ∈(A0 −{0})∩Mk
n ¯ o
¯
Mk + φ ∈ L2 (Ω) ¯(r1/2 φ, r1/2 us ) = 0, s = 1, 2, ...k − 1 (45)

ossia λk è il minimo di J[φ] in A0 − {0} col vincolo che φ sia ortogonale


(rispetto al peso r) alle autofunzioni {us }s=1,2,...k−1 .

2.4 Metodi variazionali approssimati


2.4.1 Metodo di Rayleigh-Ritz
Tale metodo si applica a quei problemi che ammettono una formulazione vari-
azionale, ossia problemi in cui si cerca una funzione u che minimizzi (o mas-
simizzi o renda stazionario) un certo funzionale J[u] in un definito spazio A.
D’ora in poi, senza specificare massimo, minimo o punto stazionario, diremo
semplicemente punto estremale intendendo un punto che annulla la variazione
prima del funzionale. Consideriamo allora il caso del problema (24) che è ab-
bastanza generale, e gli spazi definiti dalle (28) che per comodità riscriviamo (al

16
G. Sciortino - Meccanica Computazionale

posto di gD scriveremo semplicemente g):


© ª
A = u ∈ H 1 (Ω) |u = g in SD
(46)
© ª
M = v ∈ H 1 (Ω) |v = 0 in SD
Sia ora noto il funzionale J[u]. Sia poi φ0 ∈ A una arbitraria funzione
assegnata (se g è nota anche in Ω o se è prolungabile in Ω conviene assumere
φ0 = g) e siano φ1 , φ2 , ...φN , N funzioni linearmente indipendenti appartenenti
a M. Allora la funzione:
N
X
uN (x) = φ0 (x) + cj φj (x) (47)
j=1

appartiene ad A ∀(c1 , c2 , ....cN ) ∈ RN .


Al variare comunque di (c1 , c2 , ....cN ) ∈ RN , la funzione uN spazzerà un
insieme AN ⊂ A. Il metodo di Rayleigh-Ritz consiste nell’approssimare la
ricerca dell’estremale di J in A, nella ricerca dell’estremale di J in AN . Tanto
meglio lo spazio AN , spazzato dalla uN , approssima bene A, tanto più preciso
è il risultato fornito da tale metodo. Ovviamente trovare un estremale di J in
AN , equivale a trovare i punti estremali della seguente funzione delle N variabili
(c1 , c2 , ....cN ) ∈ RN :
N
X
Λ(c1 , c2 , ....cN ) + J[φ0 + cj φj ] = J[φ] (48)
j=1 φ∈AN

ossia risolvere il sistema di N equazioni in N incognite:


∂Λ/∂cr = 0, r = 1, 2, ....N (49)
Trovati i coefficienti cr che soddisfano le (49), trovo uN (x) che è la funzione
approssimante la soluzione esatta del problema variazionale.
In molti casi di interesse applicativo, data la struttura quadratica dei fun-
zionali, il sistema (49) è lineare e quindi facilmente risolvibile dal punto di vista
computazionale.

2.4.2 Metodo di Galerkin


Tale procedura si utilizza per approssimare soluzioni deboli, quando la formu-
lazione variazionale non è possibile. Il problema è allora trovare una funzione
u∗ ∈ A tale che
K[u∗ , v] = F [v], ∀v ∈ M (50)
Siano allora φ1 , φ2 , ...φN , N funzioni linearmente indipendenti, appartenenti
a M, per la costruzione di una approssimante u∗N sempre secondo una formula
analoga alla (47):
XN
u∗N (x) = φ0 (x) + c∗j φj (x) (51)
j=1

17
G. Sciortino - Meccanica Computazionale

e siano ψ 1 , ψ 2 , ...ψ N , N funzioni linearmente indipendenti appartenenti a M


(eventualmente coincidenti con le φ1 , φ2 , ...φN ) necessarie ad approssimare la
condizione che impone il soddisfacimento della K[u∗ , v] = F [v] per ogni v ∈ M.
Scrivendo allora:
K[u∗N , ψ r ] = F [ψ r ], r = 1, 2, ...N (52)
otteniamo il sistema di N equazioni in N incognite c∗1 , c∗2 , ...., c∗N . Risolto il
sistema, dalla (51) ricaviamo u∗N (x) che è la funzione approssimante la soluzione
esatta del problema debole (50). Si può poi dimostrare che tale procedura coin-
cide con quella di Rayleigh-Ritz, qualora la formulazione debole (50) ammette
una formulazione variazionale equivalente.

2.4.3 Metodo di Rayleigh-Ritz nei problemi agli autovalori


Applichiamo la procedura di Rayleigh-Ritz al problema agli autovalori (40).
φ1 , φ2 , ...φN , N funzioni linearmente
Siano © ª indipendenti, appartenenti allo spazio
A0 = φ ∈ H 1 (Ω) |φ = 0 in S = ∂Ω e sia A0N sia l’insieme spazzato dalla
N
X
uN = cj φj (53)
j=1

al variare di (c1 , c2 , .....cN ) in RN .Valutiamo allora il quoziente di Rayleigh (42)


in corrispondenza della funzione approssimante uN .
Otteniamo allora:
X N
N (c1 , c2 , .....cN )
H(c1 , c2 , .....cN ) + J[ cj φj ] =
j=1
D(c1 , c2 , .....cN )
N
X
N (c1 , c2 , .....cN ) + Ajk cj ck = (X T .A.X)
j,k=1
N
X
D(c1 , c2 , .....cN ) + Bjk cj ck = (X T .B.X) (54)
j,k=1

dove:
Z
Ajk + (p∇φj · ∇φk + qφj φk )dΩ

Z
Bjk + rφj φk dΩ, X + [c1 , c2 , .....cN ]T

Da notare che le matrici A = ((Ajk )), B = ((Bjk )) sono simmetriche e le forme


quadratiche (X T .A.X), (X T .B.X) sono definite positive (in quanto traduzioni
di strutture quadratiche positive) come si evince dalle (54) e dal fatto che per
ipotesi (vedi 40) p, r > 0, q ≥ 0.
Cerchiamo allora il minimo della funzione H(c1 , c2 , .....cN ) al variare di
(c1 , c2 , .....cN ) in RN , con il vincolo che il denominatore valga uno (D = 1),

18
G. Sciortino - Meccanica Computazionale

ossia il minimo di J[φ] in A0N ∩ L ⊂ A0 ∩ L . Applicando il metodo dei molti-


plicatori di Lagrange, segue che dobbiamo minimizzare N col vincolo 1 − D = 0,
e − D). Segue:
ossia annullare le derivate parziali della funzione N + λ(1

∂(N + λ(1 e
e − D))/∂cr = ∂N/∂cr − λ∂D/∂cr = 0, r = 1, 2, ....N

Aggiungendo il vincolo e tenendo conto delle (54), in forma matriciale otteniamo:

e
A.X = λB.X, X T .B.X = 1 (55)

Come si vede il vincolo costituisce semplicemente una condizione di normaliz-


e
zazione degli autovettori per il problema agli autovalori dato dalla A.X = λB.X.
Dunque la ricerca del minimo vincolato di H comporta la risoluzione delle
(55). Affinché le (55) ammettano autosoluzioni deve annullarsi il determinante:

e =0
det(A − λB) (56)

Poichè A e B sono simmetriche, l’equazione (56) fornisce autovalori tutti


reali. Sia λe1 il più piccolo. Allora tale valore costituisce un approssimante
del valore esatto λ1 del problema (40). Infatti dalle (55) segue, moltiplicando
e è dato da: λ
per X T , che il generico autovalore λ, e = (X T .A.X)/(X T .B.X) =
N/D = H(X), cioè è proprio il valore che assume H in corrispondenza del
corrispondente autovettore. Poichè λ e1 è il più piccolo degli autovalori, esso
è anche il più piccolo valore che assume H, valore assunto in corrispondenza
dell’autovettore X1 . Segue:

minH(X) = min e1
N (X) = (X1T .A.X1 )/(X1T .B.X1 ) = λ (57)
X6=0 X T .B.X=1

D’altra parte essendo anche:


e1 =
λ min J[φ]
φ∈A0N ∩L

ed essendo l’autovalore esatto λ1 soddisfacente la:

λ1 = min J[φ]
φ∈A0 ∩L

dal fatto che A0N ∩ L ⊂ A0 ∩ L ⇒ λ e1 ≥ λ1 , ossia λ


e1 approssima per eccesso
l’autovalore esatto λ1 . Tale procedura fornisce generalmente un’ottima approssi-
mazione dell’autovalore più piccolo e della corrispondente autofunzione. Come
spiegato in Appendice, anche gli altri autovalori e i corrispondenti autovettori
approssimano quelli esatti, ma la precisione scade al crescere della grandezza
degli autovalori.

19
G. Sciortino - Meccanica Computazionale

3 ESEMPI APPLICATIVI

3.1 Equazione della membrana

Con membrana si intende un mezzo continuo bidimensionale resistente a trazione


ma non a flessione e taglio.
Una pellicola o un lenzuolo elastico teso hanno un comportamento che ben
approssima quello di una membrana. Supponendo che a riposo (al tempo t = 0)
la membrana appartenga ad un piano xy, l’equazione che ne descrive le piccole
deformazioni in termini di spostamento verticale z(x, y, t) rispetto al piano xy,
è data dalla seguente equazione iperbolica:

∂ 2 z/∂t2 = a2 ∇2 z + F (x, y, t)/ρ (58)

dovep
a = T0 /ρ, ρ =densità areolare=massa/area,
T0 =tensione=forza/lunghezza
F (x, y, t) =forza areolare=(forza/area) applicata al generico elemento d’area
nel punto della membrana di coordinate (x, y, z(x, y, t)) al tempo t.

3.1.1 Deformazione della membrana sotto l’azione di un carico ri-


partito
Cominciamo col risolvere un problema statico, ossia quando la funzione z e
quindi F sono indipendenti dal tempo. L’equazione (58) diventa allora:

−∇2 z = f (x, y) + F (x, y)/(ρa2 ) (59)


Otteniamo allora una equazione ellittica, equazione di Poisson, nell’incognita
z(x, y) nota la funzione f (x, y). La z(x, y) fornisce ovviamente la deformata della
membrana sotto l’azione del carico distribuito F (x, y). Risolviamo allora tale
equazione col metodo di Rayleigh-Ritz per il caso di una membrana rettangolare
il cui contorno è vincolato ad appartenere al piano xy qualunque sia la defor-
mazione della membrana. A riposo la membrana occupi il dominio rettangolare:
Ω = {(x, y) |0 ≤ x ≤ Lx , 0 ≤ y ≤ Ly } .
Si tratta allora di risolvere il problema:

−∇2 z = f (x, y) in Ω (60)


z = 0 su ∂Ω

Dalla relazione (35) sappiamo che il problema (60) equivale a trovare l’estremale
del seguente funzionale:
Z
J[z] = (∇z · ∇z − 2f z) dΩ (61)

© ª
in A = z ∈ H 1 (Ω) |z = 0 in ∂Ω

20
G. Sciortino - Meccanica Computazionale

In questo caso essendo A uno spazio vettoriale per la condizione di nullità


di z su ∂Ω, possiamo assumere M = A e quindi φ0 = 0. Dobbiamo scegliere
ora delle funzioni linearmente indipendenti appartenenti a M = A . Scegliamo
allora le seguenti funzioni trigonometriche:

φi,j + sin(iπx/Lx ) sin(jπy/Ly ) (62)


le quali, come immediatamente si verifica, si annullano identicamente su ∂Ω
e quindi appartengono ad M = A e sono linearmente indipendenti. Per ovvi
motivi di semplicità usiamo una notazione a due indici φi,j per denotare le
funzioni (62). Costruiamo allora la funzione approssimante:
N
X
zN2 = cij φi,j (63)
i,j=1

dove N 2 rappresenta il numero di funzioni φi,j . Troviamo allora gli estremali


della funzione Λ ottenuta inserendo la (63) nella (61) :
Z ¯
¯
Λ= ((∂z/∂x) + (∂z/∂y) − 2f z) dΩ¯¯
2 2
=
Ω z=zN 2
* N N N
+
X X X
2 2
( cij ∂φi,j /∂x) + ( cij ∂φi,j /∂y) − 2f cij φi,j (64)
i,j=1 i,j=1 i,j=1
Z
h•i + • dΩ

Imponendo allora l’annullamento delle derivate parziali di Λ rispetto ai co-


efficienti crs segue:
* N N
+
∂Λ X X
= 2 ∂φr,s /∂x cij ∂φi,j /∂x + ∂φr,s /∂y cij ∂φi,j /∂y − f φr,s = 0
∂crs i,j=1 i,j=1

da cui:
N
X ­ ®
ξ ijrs cij = f φr,s
i,j=1
­ ®
ξ ijrs + (∂φr,s /∂x)(∂φi,j /∂x) + (∂φr,s /∂y)(∂φi,j /∂y) (65)
r, s = 1, 2, ...N

Il sistema (65) è un sistema di N 2 equazioni lineari nelle N 2 incognite crs .


In virtù della scelta delle autofunzioni (62), si verifica facilmente che:
(
0 se i 6= r o j 6= s
ξ ijrs = r 2 π 2 Ly 2 2
ς rs + 4Lx + s 4L π Lx
y
se i = r e j = s

21
G. Sciortino - Meccanica Computazionale

cosicchè il sistema (65) è diagonalizzabile e fornisce:


­ ® ­ ®
ς rs crs = f φr,s ⇒ crs = f φr,s /ς rs (66)
Dalle (66) e dalla (63) si ha la soluzione approssimata:
N
X ­ ®
zN 2 = f φr,s /ς rs sin(rπx/Lx ) sin(sπy/Ly ) (67)
r,s=1

Si può dimostrare che per N → ∞ la (67) tende alla soluzione esatta del
problema (60).
A titolo di esempio in figura 1 e 2 sono riportati i grafici 3D per due mem-
brane quadrate di lato unitario sollecitate rispettivamente dai seguenti due pesi
distribuiti, utilizzando N = 20 :
f =1
£ ¤
f = exp −35((x − Lx /4)2 + (y − Ly /2)2 )

0.06
1
0.04
0.02 0.8
0 0.6
0
0.2 0.4
0.4
0.6 0.2
0.8
10

Fig.1 f = 1

0.015
0.01 1
0.005 0.8
0 0.6
0
0.2 0.4
0.4
0.6 0.2
0.8
0
1

£ ¤
Fig.2 f = exp −35((x − Lx /4)2 + (y − Ly /2)2 )

22
G. Sciortino - Meccanica Computazionale

3.1.2 Autovibrazioni della membrana

Valutiamo ora i modi di oscillazione propri della membrana sempre fissata


agli estremi. Con modo di oscillazione proprio si intende una oscillazione non
forzata che evolve nel tempo con una sola frequenza. La storia temporale
dell’oscillazione di ogni punto materiale del continuo in esame è cioè sinusoidale
(trascurando ovviamente gli attriti). Per valutare tali modi di oscillazione nella
equazione (58) poniamo F = 0 (assenza di forzante) e cerchiamo soluzioni del
tipo (sinusoidali nel tempo):

z = u(x, y) exp(Iωt) (68)



I + −1

Inserendo la (68) nella equazione (58) segue:

−ω 2 u(x, y) = a2 ∇2 u

o anche ponendo λ + ω 2 /a2 otteniamo:

−∇2 u = λu (69)
L’equazione (69) va integrata sempre richiedendo che u sia nulla al contorno
cioè su ∂Ω (membrana fissata agli estremi) e richiedendo che u non sia identi-
camente nulla. La (69) allora è un problema agli autovalori del tipo (40) con
p = 1, q = 0, r = 1.
Risolviamolo allora col metodo di Rayleigh-Ritz calcolando il primo autoval-
ore e il primo modo di oscillazione. Poichè le funzioni linearmente indipendenti
devono appartenere allo spazio:
© ª
A0 = φ ∈ H 1 (Ω) |φ = 0 in S = ∂Ω

possiamo scegliere le funzioni φi,j definite dalle (62) e costruire la funzione


approssimante come:
N
X
uN 2 = crs φr,s (70)
r,s=1

che deve minimizzare il funzionale:


R
(∇φ · ∇φ)dΩ
J[φ] + Ω R 2 (71)

φ dΩ
ottenuto dal funzionale (42) ponendo:
p = 1, q = 0, r = 1.
Per poter usare la simbologia matriciale analoga al problema agli autovalori
(55), dobbiamo usare un solo indice per denotare le funzioni φr,s . Se definiamo
allora la corrispondenza:

(r, s) ←→ j = (r − 1)N + s (72)

23
G. Sciortino - Meccanica Computazionale

che equivale ad associare alla coppia (1, 1) l’indice j = 1, alla coppia (1, 2)
l’indice j = 2 e via dicendo, l’approssimante (70) diventa:
2
N
X
uN 2 = cj φj (73)
j=1

La relazione (72) è biunivoca. Infatti noto j si può risalire sia ad r che ad


s. Si verifica immediatamente che le inverse delle (72) sono date da:

∙ ¸
j−1
r(j) = + 1, [•] + parte intera di • (74)
N
∙ ¸
j−1
s(j) = j − N
N
Con tale notazione la generica φj è data da:

φj = sin(r(j)πx/Lx ) sin(s(j)πy/Ly ) (75)

L’equazione (55) diventa allora:

e
A.X = λB.X (76)
dove:

Z Z
∂φj ∂φk ∂φj ∂φk
Ajk + ∇φj · ∇φk dΩ = ( + )dΩ (77)
Ω ∂x ∂x ∂y ∂y
Z Ω
Bjk + φj φk dΩ

Calcolando gli integrali, analogamente ai risultati ottenuti dalle (65), segue


che:
(
0 se j 6= k
Ajk = r(j)2 π 2 Ly 2 2 (78)
4Lx + s(j)4Lπy Lx se j = k
½
0 se j 6= k
Bjk = Lx Ly
4 se j = k
Le matrici A, B sono dunque diagonali e quindi gli autovalori del problema
(76) sono immediatamente calcolabili e dati da:

ej r(j)2 π 2 s(j)2 π 2
λ = Ajj /Bjj = + (79)
L2x L2y
j = 1, 2, ......

a cui corrispondono le autofunzioni:

φj = sin(r(j)πx/Lx ) sin(s(j)πy/Ly ) (80)

24
G. Sciortino - Meccanica Computazionale

Il più piccolo autovalore si ha per j = 1 → r = 1, s = 1 e la corrispon-


dente autofunzione sin(πx/Lx ) sin(πy/Ly ) (ossia il primo modo di oscillazione)
è mostrata in Fig.3 per il caso del quadrato di lato uno.

Fig.3: primo modo di oscillazione


In figura 4 e 4bis sono rappresentati rispettivamente i modi di oscillazione:
secondo, terzo, quarto e quinto.

Fig.4: secondo e terzo modo di oscillazione

Fig.4bis: quarto e quinto modo di oscillazione


Utilizzando il metodo di separazione delle variabili, è facile verificare che gli
autovalori (79) e le autofunzioni (80) sono esatti in virtù di una scelta felice
delle φj ,che in questo caso coincidono con i modi esatti di oscillazione.

25
G. Sciortino - Meccanica Computazionale

Valutiamo ora l’effetto relativo ad una diversa scelta delle funzioni φj . Tenendo
conto che si devono annullare al contorno della membrana, potremmo provare
con delle funzioni polinomiali del tipo:

φj = [x(x − 1)]r[j] [y(y − 1)]s[j] (81)

Tali funzioni non sono ortogonali in Ω e di conseguenza le matrici A e B


stavolta non sono diagonali. Ponendo ad esempio N = 2 → N 2 = 4 si otten-
gono dal sistema (76), dopo aver calcolato le matrici A e B i seguenti quattro
autovalori approssimati posti a confronto con quelli veri:
e = {19.7395, 111.9999, 111.9999, 204.2605}
λ
λ = {19.7392, 49.3480, 49.3480, 78.9568}

Come si vede anche con soli quattro modi l’approssimazione, per eccesso
come dimostrato, dell’autovalore più piccolo è ottima. Tale fatto è chiaramente
legato alla analoga simmetria delle (81) e del primo modo di oscillazione. La
cattiva approssimazione degli autovalori successivi è invece legata al fatto che
le (81) non sono mai emisimmetriche. Calcolando dalle (76) l’autosoluzione
(c1 , c2 , c3 , c4 ) corrispondente al primo autovalore possiamo costruire l’autofunzione
approssimante il primo modo di oscillazione:
2
N
X
uN 2 = cj [x(x − 1)]r[j] [y(y − 1)]s[j] (82)
j=1

il cui grafico è riportato in figura 5.

1
0.75 1
0.5
0.25 0.8
0 0.6
0
0.2 0.4
0.4
0.6 0.2
0.8
0
1

Fig. 5

In figura 6 sono riportate rispettivamente in ordinata le differenze in val-


ore assoluto fra l’autofunzione esatta data dalle (75) e quella approssimata per
diversi valori di y = 0.1, 0.25, 0.5 e in ascissa il valore di x. In figura 7 tale dif-
ferenza è graficata in forma tridimensionale. Ovviamente, per rendere omogeneo

26
G. Sciortino - Meccanica Computazionale

il confronto, questo è stato effettuato dopo aver normalizzato le autofunzioni al


loro valore massimo, cosicchè questo risulta unitario dopo la normalizzazione.

0.002
0.0015
0.001
0.0005 0.8
0 0.6

0.2 0.4
0.4
0.6 0.2
0.8

Fig.6 Fig.7

Come si vede l’errore massimo è circa il 2 per mille.

3.2 Svuotamento a potenziale di un serbatoio


Consideriamo il problema dello svuotamento di un serbatoio piano in termini di
funzione di corrente ψ. In assenza di vorticità, la funzione ψ verifica l’equazione
di Laplace nel dominio fluido mostrato in figura 8.

y
Δψ
1

h
2
4

Δψ
3

a
x
b

Fig.8

Si tratta quindi di risolvere il problema:

27
G. Sciortino - Meccanica Computazionale

½
∇2 ψ = 0 in Ω
(83)
ψ = g in ∂Ω
dove Ω = {x, y |0 < x < L, 0 < y < h }
Vediamo ora chi deve essere la funzione g affinché il problema di Dirichlet
(83) traduca correttamente il processo di efflusso. Innanzi tutto la frontiera ∂Ω
è composta di quattro parti S1 ∪ S2 ∪ S3 ∪ S4 indicate in figura con i numeri
1, 2, 3, 4. Le S2 e S4 sono superfici impermeabili e dunque su esse la ψ è costante
(vedremo poi che valore deve assumere). S3 è in parte impermeabile (0 ≤ x ≤
a ∪ b ≤ x ≤ L) + SIM P3 e in parte permeabile (a < x < b)+ SP3 , mentre S1 è
tutta permeabile. Ricordando le relazioni che legano la funzione di corrente ψ
al campo di velocità V + (Vx , Vy ):

Vx = ∂ψ/∂y
Vy = −∂ψ/∂x

detta V1 = Q/L (Q =portata) la velocità del fluido (assunta uniforme) sulla


superficie libera S1 e V3 = Q/(b − a) la velocità allo sbocco (parte permeabile
di S3 , sempre assunta uniforme) su tali sezioni dovrà essere:

−∂ψ/∂x|S1 = −V1 ⇒ ψ|S1 = V1 x + const1


−∂ψ/∂x|SP3 = −V3 ⇒ ψ|SP3 = V3 x + const3

Aggiustando allora le costanti in modo che il valore assunto da ψ su ∂Ω sia


una funzione continua segue che ( ψ|∂Ω = g):


⎪ g1 (x) + V1 x in S1 = {0 ≤ x ≤ L, y = h}



⎪ V1 L = Q in S2 = {0 ≤ y ≤ h, x = L}

g= ⎧0 in S4 = {0 ≤ y ≤ h, x = 0} (84)

⎪ ⎨ 0 per 0 ≤ x ≤ a



⎪ g (x) = V3 (x − a) per a < x < b in S3
⎩ 3 ⎩
V3 (b − a) = Q per b ≤ x ≤ L
L’andamento qualitativo della g è disegnato in Fig.8, in cui si mette in evi-
denza l’andamento lineare della ψ sulle frontiere permeabili e il valore comune
∆ψ = Q assunto per garantire la continuità sulla frontiera ∂Ω. La funzione g,
come evidente, non è di classe C 1 su ∂Ω in quanto la derivata è discontinua
nei quattro punti intersezione delle parti permeabili di ∂Ω con quelle imperme-
abili. Risolviamo ora il problema (83) col metodo di Rayleigh-Ritz, cercando
l’estremale del funzionale (formula (35) con f = 0):
Z
J[ψ] = ∇ψ · ∇ψdΩ + h∇ψ · ∇ψi (85)

28
G. Sciortino - Meccanica Computazionale

© ¯ ª
nell’insieme A = ψ ∈ H 1 (Ω)¯ ψ = g su ∂Ω . Poichè g non è nulla, tale in-
sieme non è © uno spazio vettoriale
¯ ed èªnecessario definire anche lo spazio vet-
toriale M = φ ∈ H 1 (Ω)¯ φ = 0 su ∂Ω . Come abbiamo visto nei metodi vari-
azionali approssimati, la funzione approssimante si deve porre nella forma:

N
X
ψN 2 = ψ0 + cij φi,j (86)
i,j=1
ψ0 ∈ A, φi,j ∈ M

La scelta delle φi,j , tenendo conto che l’appartenenza ad M richiede che tali
funzioni si annullino sulla frontiera ∂Ω, può essere fatta utilizzando le funzioni:
iπx jπy
) sin(
φi,j = sin( ) (87)
L h
Per quanto riguarda la scelta di ψ 0 ,tale scelta è arbitraria ma l’appartenenza
ad A richiede che ψ 0 assuma su ∂Ω i valori di g. E’ allora naturale cercare di
vedere se g è prolungabile in Ω. Ora sappiamo che g1 (x) è il valore che assume
per y = h, mentre g3 (x) il valore che assume per y = 0. Per prolungarla in
maniera continua all’interno del dominio fluido, è naturale provare a connettere
tali due funzioni attraverso una combinazione lineare a coefficienti dipendenti
da y ponendo:

(h − y) y
gprolungata = ψ 0 = g3 (x) + g1 (x) (88)
h h
Come è immediato verificare tale funzione è definita e continua in tutto
Ω ∪ ∂Ω e su ∂Ω assume i valori di g. Va sottolineato che tale funzione è solo
continua, ma ha derivate discontinue come g. L’appartenenza ad A non richiede
però alcuna condizione di continuità delle derivate ma solo che queste siano a
quadrato integrabile (appartenenza ad H 1 (Ω)), condizione senz’altro verificata
data la finitezza delle derivate nei punti dove esistono.
Inseriamo ora l’approssimante (86) nel funzionale (85) e cerchiamo gli estremi
della funzione:
XN
Λ = J[ψ 0 + cij φi,j ] (89)
i,j=1

al variare di cij ∈ R. Imponendo l’annullamento delle derivate parziali


∂Λ/∂crs , segue, dopo alcuni passaggi, che i coefficienti cij devono verificare
il sistema lineare:

N
X ¿ À ¿ À
∂φi,j ∂φr,s ∂φi,j ∂φr,s ∂ψ 0 ∂φr,s ∂ψ 0 ∂φr,s
cij + = − + (90)
i,j=1
∂x ∂x ∂y ∂y ∂x ∂x ∂y ∂y
r, s = 1, 2, ...N

29
G. Sciortino - Meccanica Computazionale

L’ortogonalità delle φi,j in Ω ha come conseguenza che nella sommatoria a


primo membro delle (90) solo i termini con i = r e j = s sono non nulli cosicchè
il sistema è immediatamente risolvibile in quanto diagonalizzato e porge:

crs = μrs /ηrs


¿ À
∂ψ 0 ∂φr,s ∂ψ 0 ∂φr,s
μrs + − + (91)
∂x ∂x ∂y ∂y
¿ À
∂φr,s ∂φr,s ∂φr,s ∂φr,s
η rs + +
∂x ∂x ∂y ∂y
Eseguendo i calcoli si trova che:

hQ rπb rπa
μrs = − (sin( ) − sin( ))
(b − a)πs L L
π2 r2 h s2 L
ηrs = ( + )
4 L h
Nelle Fig.9 e Fig.10 sono riportati i grafici delle linee di livello (linee di
corrente) per l’approssimante (86) con N = 20, relativi rispettivamente ad un
serbatoio quadrato di lato unitario con Q = 1. e con efflusso compreso nella
zona fra 0.4 < x < 0.6 e 0.6 < x < 0.8:

Fig. 9 Fig.10

Prima di concludere tale esempio facciamo una interessante osservazione.


L’approssimante (86), avendo come addendo ψ 0 , è una funzione continua ma
con derivate discontinue. Per N → ∞ deve però fornire la soluzione esatta
dell’equazione di Laplace relativa al problema (83), che richiede funzioni con
derivate continue fino al secondo ordine (appartenenza a C 2 (Ω)). Per visualiz-
zare come la funzione ψ N 2 "transmigra" per N → ∞ da H 1 (Ω) verso C 2 (Ω)

30
G. Sciortino - Meccanica Computazionale

(equivalenza fra la formulazione debole e quella classica) osserviamo i grafici di


Fig.11 e Fig.12 che riportano l’andamento di ψ N 2 (x, h/2) plottato al variare

ψN 2

H 1 (Ω ) C 2 (Ω )

di x per y = h/2 rispettivamente per N = 0, N = 5, N = 20, N = 40 :

N =0 N =5
Fig11

N = 20 N = 40
Fig.12

Come si vede, all’aumentare del numero di modi, la funzione perde le dis-


continuità e tende a diventare liscia come richiede la formulazione classica del
problema (83).

31
G. Sciortino - Meccanica Computazionale

Lo svuotamento a potenziale del serbatoio, può essere fatto anche in termini


della funzione potenziale ϕ risolvendo sempre l’equazione di Laplace ma con
condizioni al contorno alla Neumann essendo in tal caso V = ∇ϕ. Al posto del
problema (83) avremo allora il problema:
½
∇2 ϕ = 0 in Ω
(92)
∂ϕ/∂n = g in ∂Ω
dove g deve valere (la normale n è assunta esterna):


⎪ ∂ϕ/∂y = −V1 in S1 = {0 ≤ x ≤ L, y = h}



⎪ ∂ϕ/∂x = 0 in S2 = {0 ≤ y ≤ h, x = L}

−∂ϕ/∂x = 0⎧in S4 = {0 ≤ y ≤ h, x = 0}
g=

⎪ ⎨ 0 per 0 ≤ x ≤ a



⎪ −∂ϕ/∂y = V3 per a < x < b in S3
⎩ ⎩
0 per b ≤ x ≤ L
Da notare che tale funzione g verifica la condizione di risolubilità (39) in
quanto: Z
gd∂Ω = V3 (b − a) − V1 L = Q − Q = 0
∂Ω

Dalla formula (36) sappiamo che il problema (92) è equivalente a trovare


l’estremale del funzionale:
Z Z
J[ϕ] = ∇ϕ · ∇ϕdΩ − 2 gϕdS (93)
Ω ∂Ω
© ¯ª
in A = M = ϕ ∈ H (Ω)¯ . 1

Poichè in tale problema non è richiesto nessun comportamento speciale


sulla frontiera ∂Ω per appartenere ad A, l’approssimante conviene definirla
attraverso una serie di coseni che non si annullano identicamente sulla fron-
tiera. Se si scegliesseZuna serie di seni che si annullano su ∂Ω come nel prob-
lema (83), il termine gϕdS nella (93) sarebbe identicamente nullo calcolato
∂Ω
sull’approssimante e il sistema lineare per calcolare i coefficienti dello sviluppo
sarebbe quindi omogeneo ammettendo la sola soluzione nulla. Posto allora:

N
X
ϕN 2 = cij ϕi,j , Λ + J[ϕN 2 ] (94)
i,j=0
iπx jπy
ϕi,j + cos( ) cos( ), c00 + 0
L h
imponendo l’annullamento delle derivate parziali ∂Λ/∂crs si ottiene un sis-
tema lineare nelle incognite crs , i cui valori forniscono l’approssimante (94).
L’aver posto c00 + 0 è conseguenza del fatto che l’equazione di Laplace, con
condizioni alla Neumann, ammette infinite soluzioni che differiscono per una

32
G. Sciortino - Meccanica Computazionale

costante arbitraria e quindi l’annullamento di c00 equivale ad aver fatto una


particolare scelta per tale costante arbitraria.
Nelle Fig.13 sono riportate le soluzioni sovrapposte alle analoghe figure 9 e
10 per visualizzare la rete del moto.

Fig.13

3.3 Oscillazioni trasversali di una trave


Consideriamo una trave omogenea di lunghezza L, sezione S, modulo elastico E
e densità ρ, vincolata ai due estremi mediante una fissata combinazione di due
dei tre seguenti vincoli: appoggio. incastro o estremo libero. Per descrivere le
oscillazioni forzate trasversali di piccola ampiezza della trave, bisogna risolvere
l’equazione del quarto ordine:
∂ 2 z/∂t2 + a2 ∂ 4 z/∂x4 = f (x, t) (95)
f (x, t) + F (x, t)/(ρS)
dove a2 + EJ/(ρS), F (x, t) è il carico distribuito (positivo verso l’alto), J
il momento d’inerzia rispetto all’asse neutro e z(x, t) la deformata istantanea
della trave rispetto alla posizione di riposo.

33
G. Sciortino - Meccanica Computazionale

Cominciamo con studiare le autovibrazioni della trave, ossia oscillazioni non


forzate in cui ogni elemento della trave oscilla con una medesima frequenza.
Dall’equazione (95) annullando allora il carico distribuito e cercando soluzioni
del tipo:
z(x, t) = zf (x)eIωt (96)
segue il problema agli autovalori del quarto ordine:

⎨ d4 zf /dx4 = λzf ,λ + ω 2 /a2
d z/dxs1 = ds2 z/dxs2 = 0 per x = 0
s1
(97)
⎩ p1
d z/dxp1 = dp2 z/dxp2 = 0 per x = L

consistente nel trovare soluzioni non identicamente nulle zf assieme al cor-


rispondente autovalore λ > 0.
Gli interi s1 , s2 , p1 , p2 assumono i valori 0, 1, 2, 3 (d0 z/dx0 è da intendersi
come z) in relazione alle condizioni di vincolo in x = 0 e x = L. In partico-
lare per l’appoggio si devono annullare lo spostamento (indice 0) e il momento
(indice 2), per l’incastro spostamento e rotazione (indici 0 e 1) e per l’estremo
libero momento e taglio (indici 2 e 3). Il problema (97) può essere risolto analiti-
camente nel seguente modo. La soluzione generale della equazione differenziale
ordinaria del quarto ordine d4 zf /dx4 = λzf si verifica immediatamente essere:

zf = A sin(μx) + B sinh(μx) + C cos(μx) + D cosh(μx) (98)



dove μ + 4 λ e A, B, C, D sono quattro costanti arbitrarie. Imponendo
le quattro condizioni al contorno che impongono il soddisfacimento dei vin-
coli, si ottiene un sistema omogeneo di quattro equazioni lineari nelle incog-
nite A, B, C, D. Annullando il determinante di tale sistema, al fine di im-
porre l’esistenza di autosoluzioni (non identicamente nulle) si perviene ad una
equazione del tipo:
Det(μ) = 0 (99)
le cui infinite soluzioni reali e positive {μ1 , μ2 , .., μk , ....} forniscono le radici
quarte degli infiniti autovalori del problema (97). Per ogni autovalore è possibile
ricavare risolvendo il sistema omogeneo le A, B, C, D (a meno di una costante
moltiplicativa) che inserite nella (98), forniscono la corrispondente autofunzione,
detta anche modo di oscillazione. Autovalori e autofunzioni possono essere
ordinate per valori crescenti degli autovalori:
(1) (2) (k)
(λ1 , zf ), (λ2 , zf ), ...(λk , zf ), ...... (100)
λ1 < λ2 < λ3 < .......

poiché si può dimostrare che esiste un autovalore più piccolo


√ λ1 .
Ad ogni autovalore λk corrisponde la pulsazione ω k = a λk = aμ2k , che è la
k−esima pulsazione di risonanza della trave. La prima frequenza di risonanza è
dunque la più bassa, mentre le altre sono via via crescenti con l’ordine della riso-
(k)
nanza stessa. Le funzioni zf (x)eIωk t sono particolari soluzioni (particolari in

34
G. Sciortino - Meccanica Computazionale

quanto ogni elemento della trave oscilla con uguale pulsazione ω k ) dell’equazione
omogenea che si ottiene dalla (95) ponendo F = 0, ossia dell’equazione:
∂ 2 z/∂t2 + a2 ∂ 4 z/∂x4 = 0 (101)
L’insieme di tutte le soluzioni di tale equazione, essendo questa lineare ed
omogenea, costituisce uno spazio vettoriale S come facilmente si verifica. Fra
due elementi (funzioni) z1 , z2 ∈ S (ossia soddisfacenti la (101)), definiamo il
seguente prodotto scalare:
ZL
(z1 , z2 ) + z1 z2 dx (102)
0

Se (z1 , z2 ) = 0 diremo che le due funzioni sono ortogonali, in analogia ai


vettori dello spazio ordinario.
Dimostriamo ora la seguente proprietà fondamentale. Per le ipotizzate con-
dizioni di vincolo alle due estremità della trave (appoggio, incastro o estremo
libero) i modi di oscillazione sono fra loro ortogonali, ossia:
(m) (n)
(zf , zf ) = 0 se m 6= n (103)
Ovviamente poichè si sono scartate le soluzioni banali (ossia identicamente
(m) (m)
nulle), sarà sempre (zf , zf ) > 0, ∀m = 1, 2, 3......Per dimostrare la (103),
cominciamo con l’osservare che ∀z1 , z2 ∈ S ⇒ (d4 z1 /dx4 , z2 ) = (z1 , d4 z2 /dx4 ).
Tale relazione si ricava facilmente integrando quattro volte per parti fino a
“spostare” la derivata quarta sulla funzione z2 . Ad ogni integrazione per parti,
tenendo conto delle possibili condizioni di vincolo ipotizzate, spariscono sempre
(k)
i termini variati fra 0 ed L. Ricordando allora che una generica zf verifica la
(k) (k)
d4 zf /dx4 = λk zf , segue allora che:
(m) (n) (m) (n) (m) (n) (m) (n)
(d4 zf /dx4 , zf ) = λm (zf , zf ) = (zf , d4 zf /dx4 ) = λn (zf , zf )
(m) (n) (m) (n) (m) (n)
e dunque λm (zf , zf ) = λn (zf , zf ) ⇒ ( λm − λn )(zf , zf ) = 0. Se
(m) (n)
m 6= n allora (λm − λn ) 6= 0 ⇒ (zf , zf ) = 0 il che dimostra la (103).
n o
(k)
L’insieme delle autofunzioni ortogonali zf (x) può essere usata
k=1,2,3...
ora quale base per rappresentare un generica funzione z(x, t) che deve soddisfare
l’equazione di partenza non omogenea (95). A tale scopo basta porre:

X (j)
z(x, t) = Aj (t)zf (x) (104)
j=1

essendo Aj (t) dei coefficienti incogniti del tempo, che rappresentano l’ampiezza
(j)
del j-esimo modo di oscillazione zf (x). Inserendo la (104) nella (95) segue:
∞ (j)
X d2 Aj (t) (j) d4 zf (x)
2
( zf (x) + a Aj (t) ) = f (x, t)
j=1
dt2 dx4

35
G. Sciortino - Meccanica Computazionale

(j) (j) (j)


Ricordando al solito che zf verifica la d4 zf /dx4 = λj zf , con λj = ω 2j /a2 ,
segue allora la:
X∞
d2 Aj (t) (j)
( 2
+ ω 2j Aj (t))zf (x) = f (x, t) (105)
j=1
dt
(k)
Moltiplicando scalarmente entrambi i membri della precedente per zf e
ricordando la proprietà di ortogonalità (103), segue:

d2 Ak (t)
+ ω 2k Ak (t) = fk (t) (106)
dt2
fk (t) (k)
fk (t) + (k) (k) , fk (t) + (f (x, t), zf (x))
(zf , zf )

Qualora il carico F (x, t) = ρSf (x, t) sia concentrato in un punto xc (even-


tualmente mobile xc (t)), le precedenti equazioni possono essere ancora utilizzate
attraverso un opportuno passaggio al limite. Sia infatti Fc (t) un carico con-
centrato in xc (t). Immaginiamolo ora distribuito uniformemente nell’intervallo
[xc (t) − l/2, xc (t) + l/2] con un carico distribuito uniforme di intensità F (x, t) =
ρSf (x, t) = Fc (t)/l. Per l → 0 tale carico distribuito tenderà al carico concen-
(k)
trato Fc (t) in xc (t), col che il termine (f (x, t), zf (x)) nel passaggio al limite
diventerà:
(k) 1 (k)
lim(f (x, t), zf (x)) = lim (Fc (t)/l, zf (x)) =
l→0 l→0 ρS
xc (t)+l/2
Z
Fc (t) 1 (k) Fc (t) (k)
= lim zf (x)dx = z (xc (t))
ρS l→0 l ρS f
xc (t)−l/2

avendo applicato il teorema della media nell’ultimo passaggio.


Segue che per un carico Fc (t) concentrato in xc (t) le equazioni (106) diven-
tano:
(k)
d2 Ak (t) 2 Fc (t) zf (xc (t))
+ ω k Ak (t) =
dt2 ρS (z (k) , z (k) )
f f

Generalizzando e sovrapponendo gli effetti per il caso di un carico distribuito


(i) (i)
F (x, t) e N carichi concentrati Fc (t) in xc (t) (i = 1, 2, ..., N ) avremo le
equazioni:

d2 Ak (t)
+ ω 2k Ak (t) = fk (t) (107)
dt2
N
fk (t) 1 (k) 1 X (i) (k)
fk (t) + , fk (t) + (F (x, t), zf (x)) + F (t)zf (x(i)
c (t))
(k)
(zf , zf )
(k) ρS ρS i=1 c

(k)
L’ampiezza Ak (t) del k-esimo modo di oscillazione zf (x), soddisfa dunque
l’equazione di un oscillatore armonico di pulsazione propria ω k , eccitato dalla

36
G. Sciortino - Meccanica Computazionale

(k)
forzante fk (t) proporzionale alla proiezione del carico sul modo stesso zf (x).
Se tale proiezione è nulla, il modo corrispondente non viene eccitato. Se la fk (t)
oscilla con pulsazione prossima alla ω k , allora il k-esimo modo di oscillazione
(k)
zf (x) va in risonanza. Se infine il carico non dipende esplicitamente dal tempo,
allora le fk (t) = fk sono delle costanti. Le (107) ammettono allora le soluzioni
costanti Ak = fk /ω 2k che inserite nella (104) forniscono la deformata della trave
(soluzione stazionaria) sotto l’azione statica del carico. Nel caso più generale,
l’integrazione delle (107) fornisce delle funzioni del tempo Ak (t) che inserite
nella (104) forniscono la deformata istantanea della trave z(x, t). Risolvendo
ad esempio le (107) con condizioni iniziali Ak (0) = 0, A0k (0) = 0, si sta impo-
nendo che all’istante zero la trave sia indeformata e ferma. Relativamente a tale
caso, supponiamo che il carico solleciti la trave, a partire dall’istante t = 0, per
un intervallo di tempo finito. Valutiamo allora l’energia che tale sollecitazione
trasferisce alla trave e come tale energia si distribuisce tra i vari modi di oscil-
lazione. L’energia della trave è la somma di quella cinetica e di quella elastica
e dunque:
Z
1 L ∂z ∂2z
Etrave = (ρS( )2 + EJ( 2 )2 )dx
2 0 ∂t ∂x
Inserendo allora lo sviluppo (104) segue:
∞ Z L ∞ Z L 2 (k) 2 (j)
1 X 0 0 (k) (j) 1 X d zf d zf
Etrave = ρSAk Aj zf zf dx + EJAk Aj dx
2 0 2 0 dx2 dx2
k,j=1 k,j=1
(108)
Ora integrando due volte per parti e sfruttando il fatto che:
(s) (s)
d4 zf /dx4 = λs zf , s = 1, 2, ...

si ha:
Z L d2 z (k) (j) Z L d4 z (k) Z
f d2 zf f (j)
L
(k) (j)
dx = z dx = λk zf zf dx
0 dx2 dx2 0 dx4 f 0

Di conseguenza la (108) diventa:



1 X 0 0 (k) (j)
Etrave = (ρSAk Aj + EJAk Aj λk )(zf , zf )
2
k,j=1

In base alla proprietà di ortogonalità dei modi di oscillazione e alla λk =


ρSω 2k /(EJ) la precedente si semplifica ulteriormente nella:

1 X 0 (k) (k)
Etrave = ρS ((Ak (t))2 + ω 2k (Ak (t))2 )(zf , zf ) (109)
2
k=1

che rappresenta l’energia istantanea che la trave possiede all’istante t. Per


t ≥ T , dove T è un tempo oltre il quale cessa il carico che sollecita la trave, il
0
termine ((Ak (t))2 + ω 2k (Ak (t))2 ) (vedi Appendice sulla trasformata di Fourier)

37
G. Sciortino - Meccanica Computazionale

uguaglia il modulo al quadrato della trasformata di Fourier¯ del secondo


¯2 membro
¯ ¯
della (107) calcolata in corrispondenza di ω = ω k , ossia ϕfk (ω k ) . Posto allora:
Z +∞
(k) (k)
ϕfk (ω) + fk (t)e−Iωt dt = ϕfk (ω)/(zf , zf )
−∞
Z +∞
ϕfk (ω) + fk (t)e−Iωt dt
−∞

inserendo nella (109) segue:



1 X ¯¯ ¯2
ϕfk (ω k )¯ /(zf , zf )
(k) (k)
Etrave = ρS
2
k=1

¯ Cosicchè¯ l’energia che il carico trasferisce al k−esimo modo è proporzionale a


¯ϕf (ω k )¯2 /(z (k) , z (k) ). Tale espressione, come deve essere, è invariante rispetto
k f f
(k) (k)
alla trasformazione zf → czf in quanto sia il numeratore che il denominatore
(k)
dipendono quadraticamente da zf . L’indeterminazione sulla costante molti-
plicativa
¯ ¯ dei modi di oscillazione, non ha dunque nessun effetto sul termine
¯ϕf (ω k )¯2 /(z (k) , z (k) ).
k f f

3.3.1 Metodo di Rayleigh-Ritz per la trave


Nel caso in cui la trave non abbia caratteristiche omogenee lungo il suo asse,
nell’equazione (95) il coefficiente a sarà una funzione di x: a = a(x). L’equazione
delle oscillazioni non forzate sarà quindi:
∂ 2 z/∂t2 + a2 (x)∂ 4 z/∂x4 = 0 (110)
Cercando allora delle soluzioni del tipo (modi di oscillazione):
z(x, t) = zf (x)eIωt
si ottiene l’equazione agli autovalori:
ω2
d4 zf /dx4 = zf (111)
a2 (x)
RL ω2 a2
Posto allora: a2 + 1
L 0
a2 (x)dx,λ + a2
,r(x) + a2 (x) > 0 la precedente
diventa:
d4 zf /dx4 = λr(x)zf (112)
che, assieme alle condizioni al contorno che definiscono i vincoli, definisce
il problema agli autovalori per la trave non omogenea. La presenza di una
r(x) 6= 1 rende la soluzione analitica complessa. Si può allora applicare il
metodo di Rayleigh-Ritz, cercando gli estremali del seguente funzionale:
R L 00 00
φ (x)φ (x)dx
J[φ] + R L0
(113)
0
r(x)φ2 (x)dx

38
G. Sciortino - Meccanica Computazionale

che può essere ottenuto moltiplicando entrambi i membri della (112) per
zf e integrando (va fatta una doppia integrazione per parti sul numeratore).
Le proprietà del funzionale (113) sono analoghe a quello già esaminato per i
problemi ellittici.

3.4 Equazione della piastra


Con piastra si intende un continuo in cui una dimensione, lo spessore, è molto più
piccola delle altre due dimensioni, ma che, a differenza della membrana, resiste
sia a taglio che a flessione. L’equazione che descrive le piccole deformazioni
z(x, y, t) della piastra ortogonali al piano cui appartiene in condizioni di riposo
(piano xy) è data dall’equazione del quarto ordine:

∂2z
ρ + a2 ∇4 z = F (x, y, t) (114)
∂t2
∂ 4 (·) ∂ 4 (·) ∂ 4 (·)
∇4 (·) + ∇2 ∇2 (·) = 4
+2 2 2 +
∂x ∂x ∂y ∂y 4
dove:
z =spostamento ortogonale al piano di appartenenza della piastra a riposo
F (x, y, t) =forza per unità di area applicata all’areola centrata in (x, y)
ρ =densità areolare=massa/area
a2 = Es3 /(12(1 − ν 2 ))
E =modulo elastico
s =spessore
ν =coefficiente di Poisson

3.4.1 Deformazione della piastra sotto l’azione di un carico ripartito


Cominciamo col risolvere un problema statico, ossia quando la funzione z e
quindi F sono indipendenti dal tempo. L’equazione (114) diventa allora:

∇4 z = f + F/a2 (115)
Risolvere tale equazione vuol dire trovare la deformata della piastra sotto
l’azione del carico ripartito F. Supponiamo che la piastra a riposo occupi un
dominio piano Ω del piano xy e che le condizioni di vincolo siano condizioni di
incastro. Si tratta allora di risolvere il seguente problema:
½
∇4 z = f in Ω
(116)
z = 0, ∂z/∂n = 0 su ∂Ω
Vediamo ora di dare una formulazione debole del problema (116). Sia allora:
© ¯ ª
A = M = v ∈ H 2 (Ω)¯ v = 0, ∂v/∂n = 0 su ∂Ω
Moltiplichiamo la prima delle (116) per una arbitraria v ∈ M e integriamo
su Ω. Otteniamo così:

39
G. Sciortino - Meccanica Computazionale

Z Z
4
∇ zvdΩ = f vdΩ
Ω Ω
Applicando due volte le formule di Green-Gauss al primo termine della prece-
dente e tenendo conto che z ∈ A in virtù delle condizioni al contorno e v ∈ M
si ricava facilmente:
⎧ Z Z

∇2 z∇2 vdΩ = f vdΩ
(117)
⎩ Ω ∀v ∈ M

che costituisce la formulazione debole del problema (116). Risolviamo il


problema (117) col metodo di Galerkin per il caso di piastra rettangolare, ossia
assumendo:

Ω = { x, y| 0 < x < Lx , 0 < y < Ly }


Costruiamo allora l’approssimante:
N
X
zN 2 = cij φi,j (x, y) (118)
i,j=1

e imponiamo che la (117) sia soddisfatta per tutte le v + φr,s (x, y), r, s =
1, 2, ..., N .
Denotando al solito con h·i l’integrazione in Ω, segue il sistema lineare:
N
X ­ ® ­ ®
cij ∇2 φi,j ∇2 φr,s = f φr,s , r, s = 1, 2, ..., N (119)
i,j=1

Risolto il sistema lineare (119) si costruisce immediatamente l’approssimante


(118). Vediamo ora come scegliere le φi,j (x, y) ∈ A = M. Innanzi tutto cerchi-
amole fattorizzate in funzioni della sola x moltiplicate per funzioni della sola y
ossia:

φi,j (x, y) = φXi (x)φYj (y) (120)


Le φXi (x) si devono annullare insieme alle derivate prime in x = 0 e x = Lx ,
mentre le φYj (y) si devono annullare insieme alle derivate prime in y = 0 e
y = Ly . Una possibile scelta nell’ambito delle funzioni trigonometriche è la
seguente:
(
φXi (x) + i+2 iπx (i+2)πx
i sin( Lx ) − sin( Lx )
(121)
φYj (y) + j sin( Ly ) − sin( Ly )
j+2 jπy (j+2)πy

come facilmente si verifica. Le (121) non sono però ortogonali in Ω e di


conseguenza il sistema (119) non è diagonizzabile. In Fig.14 sono riportate le
deformate delle piastre rispettivamente per i casi:

40
G. Sciortino - Meccanica Computazionale

f =1
£ ¤
f = exp −35((x − Lx /4)2 + (y − Ly /2)2 )
assumendo una piastra quadrata di lato unitario e N = 10.
Per il caso di carico uniformemente distribuito su una piastra quadrata la
freccia esatta in mezzeria vale F L4x /(830a2 ). Avendo noi assunto f = F/(a2 ) =
1 e Lx = 1 segue che la freccia esatta è 1/830 ' 0.0012 mentre quella trovata
con N = 10 è 0.0010.
Il numero di modi necessari a raggiungere una determinata precisione dipende,
ovviamente, dalla scelta delle funzioni adottate per costruire la funzione ap-
prossimante.

0.001 0.0002
0.00075 1 0.00015 1
0.0005 0.0001
0.00025 0.8 0.00005 0.8
0 0.6 0 0.6
0 0
0.2 0.4 0.2 0.4
0.4 0.4
0.6 0.2 0.6 0.2
0.8 0.8
10 10

Fig.14

3.4.2 Autovibrazioni della piastra


Per studiare le autovibrazioni della piastra poniamo:
z = u(x, y) exp(Iωt)
nella equazione (114) ponendo F = 0. Otteniamo allora:
−ρω 2 u + a2 ∇4 u = 0
e quindi ponendo λ + ρω 2 /a2 > 0 si ha il seguente problema agli autovalori
del quarto ordine: ½
∇4 u = λu in Ω
(122)
u = 0, ∂u/∂n = 0 su ∂Ω
Per risolvere il problema (122) consideriamo il quoziente alla ”Rayleigh”:
Z
∇2 u∇2 udΩ
N
J[u] = + ΩZ (123)
D
u2 dΩ

41
G. Sciortino - Meccanica Computazionale

definito
© in: ¯ ª
A = u ∈ H 2 (Ω)¯ u 6= 0, (u = 0, ∂u/∂n = 0 su ∂Ω)
mentre©: ¯ ª
M = v ∈ H 2 (Ω)¯ v = 0, ∂v/∂n = 0 su ∂Ω
Valutiamo ora le funzioni che annullano la variazione prima di J. Si ha:
DδN − N δD N
δJ = = 0 ⇒ δN = δD = J[u]δD (124)
D2 D
Si ricava poi immediatamente che:
Z
δN = 2 ∇2 u∇2 vdΩ
ZΩ
δD = 2 uvdΩ

cosicchè le (124) diventano:
Z Z
∇2 u∇2 vdΩ = J[u] uvdΩ, ∀v ∈ M (125)
Ω Ω

Ammettendo che u ∈ C 4 (Ω), applicando due volte le formule di Green-Gauss


al primo membro della (125) e tenendo conto che u ∈ A, v ∈ M, segue:
Z
(∇4 u − J[u]u)vdΩ = 0, ∀v ∈ M (126)

e quindi l’equazione di Eulero associata al funzionale (123) è:

∇4 u = J[u]u (127)
Tale equazione ci dice che gli estremali del funzionale (123) sono le autofun-
zioni del problema agli autovalori biarmonico (122) e, in corrispondenza di tali
funzioni, J[u] è proprio l’autovalore λ come mostra la (127). Poichè si può di-
mostrare che gli autovalori del problema biarmonico (122) sono numerabili e che
c’è un autovalore più piccolo, si tratta di trovare gli estremali uk del funzionale
(123) e valutare il più piccolo J[uk ], k = 1, 2, ....
Dal punto di vista numerico, costruita l’approssimante:
N
X
uN = cj φj , φj ∈ M (128)
j=1

si tratta di trovare gli estremali della funzione:


X N
N (c1 , c2 , .....cN )
H(c1 , c2 , .....cN ) + J[ cj φj ] =
j=1
D(c1 , c2 , .....cN )
N
X
N (c1 , c2 , .....cN ) + Ajk cj ck = (X T .A.X)
j,k=1
N
X
D(c1 , c2 , .....cN ) + Bjk cj ck = (X T .B.X) (129)
j,k=1

42
G. Sciortino - Meccanica Computazionale

con:
Z
Ajk + ∇2 φj ∇2 φk dΩ
ZΩ
Bjk + φj φk dΩ

X + [c1 , c2 , .....cN ]T

Poichè J[u] e quindi H sono funzioni omogenee di grado zero, possiamo


minimizzare H col vincolo che D = 1, ossia imporre che:

∂(N + λ(1 e
e − D))/∂cr = ∂N/∂cr − λ∂D/∂cr = 0, r = 1, 2, ....N

da cui segue il problema agli autovalori:


e
A.X = λB.X, X T .B.X = 1 (130)

Calcolato il più piccolo autovalore λ e1 , questo approssimerà il vero λ1 del


problema (122). Dal corrispondente autovettore X1 , si costruisce immediata-
mente il primo modo di oscillazione dall’approssimante (128).
Utilizzando come funzioni φXi (x), φYj (y) per una piastra rettangolare di lati
Lx, Ly, i modi di oscillazione di una trave incastrata ai due estremi di lunghezza
pari a Lx per le φXi (x) e Ly per le φYj (y), con la solita notazione ad un indice,
per il caso di una piastra di lati Lx = 1, Ly = 1.5 con N = 102 = 100,
si trova come primo autovalore approssimato: λ e1 = 729.52 a cui corrisponde
l’autofunzione (primo modo di oscillazione) mostrato in Fig.15.

Fig.15: primo modo di oscillazione

In Fig.16 e 16bis sono riportati rispettivamente i modi di oscillazione: sec-


ondo, terzo, quarto e quinto corrispondenti rispettivamente ai seguenti autoval-
ori approssimati:
(1740.19, 4374.89, 4429.18, 6375.97)

43
G. Sciortino - Meccanica Computazionale

Fig.16: secondo e terzo modo di oscillazione

Fig.16bis: quarto e quinto modo di oscillazione

44
G. Sciortino - Meccanica Computazionale

4 APPENDICE: RICHIAMI DI MATEMATICA E


APPROFONDIMENTI
4.1 Formule di Green-Gauss
Sia Ω ⊂ Rm un insieme aperto, n = (n1 , n2 , ..., nm ) la normale esterna alla sua
frontiera ∂Ω e b(x1 , x2 , ..., xm ) una funzione ∈ C 1 (Ω ∪ ∂Ω). Allora valgono le:
Z Z
∂b
dΩ = bni dS
Ω ∂xi ∂Ω
Applicando le precedenti ad una funzione b = hg prodotto di due funzioni si
ricava immediatamente la formula di integrazione per parti:
Z Z Z
∂h ∂g
gdΩ = hgni dS − h dΩ
Ω ∂xi ∂Ω Ω ∂xi

4.2 Ortogonalità degli autovettori nei problemi generaliz-


zati agli autovalori
Consideriamo il problema generalizzato agli autovalori:

A.X = λB.X (131)

dove A e B sono matrici simmetriche ad elementi reali di dimensione (N ×N )


e X + (c1 , c2 , ..., cN )T . Dimostriamo che detti X1 , X2 due autovettori corrispon-
denti rispettivamente ad autovalori distinti λ1 , λ2 , si ha:

X1T .B.X2 = 0 (132)

La precedente, nel caso che B sia la matrice identità, ci dice che autovettori
corrispondenti ad autovalori distinti, sono tra loro ortogonali.
Dim.
Per ipotesi: ½
A.X1 = λ1 B.X1
(133)
A.X2 = λ2 B.X2
segue:
(A.X1 )T = λ1 (B.X1 )T ⇒ X1T .A = λ1 X1T .B (134)
essendo per ipotesi AT = A, B T = B. E quindi, rispettivamente per la(134)
e per la (133), si ha:
½ T
X1 .A.X2 = (X1T .A).X2 = λ1 X1T .B.X2
⇒ λ1 X1T .B.X2 = λ2 X1T .B.X2
X1T .A.X2 = X1T .(A.X2 ) = λ2 X1T .B.X2

da cui:
(λ1 − λ2 )X1T .B.X2 = 0
Essendo per ipotesi λ1 − λ2 6= 0 ⇒ X1T .B.X2 = 0 ossia la tesi.

45
G. Sciortino - Meccanica Computazionale

4.3 Ricerca del minimo assoluto di J come minimo vinco-


lato
Verifichiamo che se il funzionale J[φ] = N [φ]/D[φ] definito dalla (42) gode della
2
proprietà: J[σφ] = N [σφ]/D[σφ] = σσ2N [φ]
D[φ] = J[φ], ∀σ 6= 0 (ossia il funzionale è
omogeneo di grado zero), tale proprietà garantisce che la ricerca del minimo di
J[φ] in A0 − {0} è equivalente alla ricerca del minimo del numeratore N [φ] col
vincolo che il denominatore D[φ] valga uno.
Dim
Sia φ1 ∈ A0 − {0} la funzione sulla quale J[φ] assume il minimo assoluto in
A0 − {0}. Dalla J[σφ] = J[φ] segue che ∀σ 6= 0 anche su σφ1 ∈ A0 − {0}, J[φ]
2
assume il minimo assoluto. Ma J[σφ1 ] = N [σφ1 ]/D[σφ1 ] = σσ2N [φ1 ]
D[φ1 ] . Scegliendo
p
allora σ = 1/ D[φ1 ] segue che:
J[σφ1 ] = N [σφ1 ]/1
e dunque il minimo di J[φ] viene assunto su una funzione σφ1 che rende
unitario il denominatore. Da ciò segue che:
min J[φ] = min N [φ]
φ∈A0 −{0} φ∈A0 ,D[φ]=1

4.4 Ricerca degli autovalori successivi al primo col metodo


di Rayleigh-Ritz
Ricordando la (44), segue che gli autovettori e gli autovalori approssimati succes-
sivi al primo, diciamo il k−esimo autovettore e autovalore con k = 2, 3, ....possono
essere trovati minimizzando N = X T .A.X (vedi (54)) col vincolo 1 − D =
1 − X T .B.X = 0 e con gli ulteriori vincoli: XsT .B.X = 0, s = 1, 2, ...k − 1, dove
Xs sono gli autovettori "precedenti" a Xk . Utilizzando il metodo dei moltipli-
catori di Lagrange segue che bisogna risolvere le N + k equazioni:


⎪ ∂G/∂cr = 0, r = 1, 2, ...N
⎨ X T .B.X = 1
T (135)

⎪ Xs .B.X = 0, s = 1, 2, ...k − 1
⎩ e − D) + P
G + N + λ(1
k−1 T
s=1 μs Xs .B.X

e (essendo questi
nelle N + k incognite X + (c1 , c2 , ..., cN )T ,μ1 ,μ2 ,...,μk−1 ,λ,
ultimi i k moltiplicatori di Lagrange). Sia ora (λ ek , Xk ) la coppia k − esimo
e e e
autovalore-autovettore (con λ1 < λ2 < ...λk ) del problema A.X = λB.X e verifi-
T
cante la Xk .B.Xk = 1. Verifichiamo allora che le N + k grandezze Xk ,(μs = 0,
ek verificano le (135). Inserendo infatti in queste equazioni
s = 1, 2, ...k − 1), λ
tali grandezze segue:
ek (1 − D))/∂cr = 0 ⇒ A.Xk = λ
∂G/∂cr = ∂(N + λ ek B.Xk
XkT .B.Xk = 1
XsT .B.Xk = 0, s = 1, 2, ...k − 1

46
G. Sciortino - Meccanica Computazionale

Le prime due equazioni sono verificate per definizione di (λ ek , Xk ). Le restanti


k − 1 equazioni sono verificate in base alla proprietà di ortogonalità (132). In
conclusione, la ricerca dei minimi vincolati di N/D per l’approssimazione degli
autovalori successivi al primo, in virtù della proprietà di ortogonalità (132),
si ottiene semplicemente risolvendo il problema agli autovalori A.X = λB.X e
e ordinando in ordine crescente gli autovalori approssimati λ e1 < λ e2 < ...λ
eN .
ej (j = 1, 2, ...N ) approssimerà il valore vero λj e ogni Xj permetterà
Allora ogni λ
di costruire la corrispondente autofunzione sulla base dell’approssimante (53).

4.5 Trasformata di Fourier: interpretazione energetica


Consideriamo una funzione F (t) con t ∈ (−∞, +∞) che verifichi la condizione:
Z +∞
|F (t)| dt < +∞ (136)
−∞

√ allora trasformata di Fourier della F (t), la funzione ϕF (ω) così


Si definisce
definita (I + −1):
Z +∞
ϕF (ω) + F (t)e−Iωt dt (137)
−∞

La ϕF (ω) è una funzione a valori complessi della variabile reale ω. Tale


variabile può ovviamente essere interpretata come una pulsazione. Vediamo ora
quale interpretazione "energetica" può essere data alla ϕF (ω). Consideriamo
un oscillatore armonico forzato e non smorzato di massa unitaria descritto dalla
equazione:
A00 (t) + 2 A(t) = f (t) (138)
dove f (t) (pensata come forza eccitatrice) è una funzione che supporremo
nulla per t < 0 e che verifica la condizione di integrabilità (136). Supponiamo
inoltre che all’istante t = 0 l’oscillatore sia fermo (A0 (0) = 0) e in posizione di
riposo (A(0) = 0).
Avendo supposto l’oscillatore di massa unitaria, la sua energia totale istan-
tanea, somma della cinetica e potenziale, sarà:
1 0 1
En = (A (t))2 + 2
(A(t))2 (139)
2 2
Associamo ora alla funzione A(t), la funzione a valori complessi ξ(t) così
definita:
ξ(t) + A0 (t) + I A(t) (140)
il cui modulo al quadrato moltiplicato per 12 , fornisce l’energia En dell’oscillatore:
1
En = |ξ(t)|2 (141)
2
Segue, derivando rispetto al tempo ξ(t):
00 0 00 00
ξ 0 (t) + A (t)+I A (t) = A (t)+I (ξ(t)−I A(t)) = A (t)+ 2
A(t)+I ξ(t)

47
G. Sciortino - Meccanica Computazionale

e quindi tenendo conto della (138), segue che la ξ(t) verifica l’equazione
differenziale del prim’ordine:

ξ 0 (t) − I ξ(t) = f (t) (142)


0
Le condizioni iniziali A(0) = 0, A (0) = 0 inducono la condizione iniziale
ξ(0) = A0 (0) + I A(0) = 0. Moltiplicando allora la (142) per e−I t segue:
d
ξ 0 (t)e−I t
− I ξ(t)e−I t
= f (t)e−I t
⇒ (ξ(t)e−I t
) = f (t)e−I t
dt
Integrando allora fra t = 0 e un generico istante t1 segue, tenendo conto che
ξ(0) = 0:
Z t1 ¯Z t1 ¯
¯ ¯
ξ(t1 )e−I t1
= f (t)e−I t ¯
dt ⇒ |ξ(t1 )| = ¯ f (t)e −I t ¯
dt¯
0 −∞

avendo tenuto conto che¯ la forza


¯ eccitatrice f (t) (per ipotesi) è nulla per
t < 0 e che essendo reale ¯e−I t1 ¯ = 1. Facendo tendere t1 → +∞ segue:
¯Z ¯2
¯ +∞ ¯ ¯ ¯2
|ξ(+∞)| = ¯¯ dt¯¯ = ¯ϕf ( )¯ = 2En(+∞)
2 −I t
f (t)e
−∞

La precedente relazione suggerisce una interpretazione estremamente efficace


circa il significato della trasformata di Fourier ϕf (ω) di una funzione f (t) che
verifica la (136) ed è nulla per t < 0. Pensando infatti tale funzione come forza
eccitatrice di un oscillatore armonico di massa unitaria e pulsazione propria ,
che per t = 0 è in posizione di riposo e fermo, il modulo al quadrato della trasfor-
mata di Fourier ϕf (ω) della f (t), calcolato in corrispondenza della pulsazione
propria dell’oscillatore, fornisce il doppio dell’energia totale che la forza f (t)
trasferisce all’oscillatore nell’intervallo di tempo [0, +∞).
Consideriamo in particolare il caso realistico in cui la forza f (t) è diversa
da zero in un intervallo di tempo finito. Questo significa che, forze eccita-
trici comunque diverse sia per durata che per forma, se in corrispondenza di
ω = hanno trasformate di Fourier con uguale modulo, avranno trasferito
all’oscillatore la stessa energia una volta terminata la loro azione.

4.6 Principio di minima azione


Il principio di minima azione di Hamilton, afferma che in un sistema mecca-
nico soggetto a forze derivabili da un potenziale −U (e quindi dotato di energia
potenziale U ), i moti effettivi del sistema sono gli estremali del seguente fun-
zionale:
Z t2
AZ = (E − U )dt (143)
t1
dove t1 e t2 sono due istanti di tempo entro i quali evolve il sistema ed
E è l’energia cinetica. Il funzionale (143) prende il nome di azione, mentre il

48
G. Sciortino - Meccanica Computazionale

principio si chiama di minima azione perchè in molti problemi della meccanica,


l’estremale è effettivamente un minimo. Per poter derivare correttamente da
tale principio le equazioni della meccanica, è necessario specificare lo spazio cui
devono appartenere le variazioni degli argomenti del funzionale (143) (insieme
M) al fine di poter calcolare la variazione prima dell’azione. Tali variazioni
devono sempre annullarsi in corrispondenza di t1 e t2 . I moti variati devono
quindi (nello spazio delle fasi del sistema) partire e arrivare negli stessi punti
del moto effettivo, come mostrato schematicamente in Fig.1 dove la linea più
spessa simboleggia il moto effettivo del sistema mentre le altre possibili moti
variati. Inoltre, qualora gli argomenti dell’azione dipendano anche da variabili
spaziali appartenenti ad un dominio Ω, tali variazioni devono annullarsi anche
su ∂Ω in modo che le funzioni variate verifichino le stesse condizioni al contorno
delle funzioni non variate. Nel simbolismo finora usato u + v è la funzione
variata, v la variazione, u la funzione non variata.

t2

t1

Fig.1

4.7 Deduzione dell’equazione della membrana dal princi-


pio di minima azione
Deduciamo ora dal Principio di Minima Azione, a titolo di esempio, l’equazione
della membrana (58). L’energia cinetica della membrana è data da:
Z Z
1 ∂z 1 ∂z 2
E= dm( )2 = ( ) ρdΩ (144)
Ω2 ∂t Ω 2 ∂t
L’energia potenziale U d associata alla deformazione elastica può essere scritta
come:
U d = T0 (Area membrana deformata-Area membrana a riposo) ossia:
Z s Z
∂z 2 ∂z 2
U d = T0 ( 1 + ( ) + ( ) dΩ − 1dΩ)
Ω ∂x ∂y Ω

dove T0 è la tensione della membrana. Per piccole deformazioni si ha che:

49
G. Sciortino - Meccanica Computazionale

s
∂z 2 ∂z 1 ∂z ∂z
1+( ) + ( )2 − 1 ' (( )2 + ( )2 )
∂x ∂y 2 ∂x ∂y
cosicchè risulta:
Z
1 ∂z 2 ∂z
U d = T0 ( (( ) + ( )2 )dΩ) (145)
Ω 2 ∂x ∂y
Infine il potenziale UF associato ad un carico distribuito F (x, y, t) (carico in
direzione verticale) è:

UF = zF (146)
cosicchè il potenziale complessivo −U = −U d + UF . L’azione per il sistema
membrana è dunque:

Z t2
AZ[z] = (E − U d + UF )dt =
t1
Z t2 Z ∙ ¸
1 ∂z 2 1 ∂z ∂z
dt ( ) ρ − T0 (( )2 + ( )2 ) + zF dΩ (147)
t1 Ω 2 ∂t 2 ∂x ∂y

Calcoliamo
© allora la variazione dell’azione. Per quanto
ª detto sui moti variati:
M = v(x, y, t)| v = 0 su ∂Ω, v|t=t1 = v|t=t2 = 0
Segue dopo brevi calcoli che:
¯
d ¯¯
δAZ[z; v] = AZ[z + v] =
d ¯ =0
Z t2 Z ∙ ¸
∂z ∂v ∂z ∂v ∂z ∂v
dt ρ − T0 ( + ) + vF dΩ (148)
t1 Ω ∂t ∂t ∂x ∂x ∂y ∂y

Ora applicando l’integrazione per parti e tenendo conto di come è definito


M si ha:
Z t2 Z Z Z t2
∂z ∂v ∂z ∂v
dt ρ dΩ = dΩ ρ dt =
t1 Ω ∂t ∂t Ω t1 ∂t ∂t
Z ¯t Z t2 2 Z t2 Z
∂z ¯¯ 2 ∂ z ∂2z
dΩ( ρ v ¯ − ρ 2 vdt) = dt − ρ 2 vdΩ (149)
Ω ∂t t1 t1 ∂t t1 Ω ∂t

e analogamente integrando per parti su x e su y e tenendo conto che v si


annulla anche su ∂Ω segue:
Z t2 Z
∂z ∂v ∂z ∂v
dt − T0 ( + )dΩ =
t1 Ω ∂x ∂x ∂y ∂y
Z t2 Z
∂2z ∂2z
dt T0 ( 2 + 2 )vdΩ (150)
t1 Ω ∂x ∂y

50
G. Sciortino - Meccanica Computazionale

dalle (149) e (150) segue allora che l’annullamento della (148) può essere
scritto come:
Z t2 Z ∙ ¸
∂2z ∂2z ∂2z
δAZ[z; v] = dt −ρ 2 + T0 ( 2 + 2 ) + F vdΩ, ∀v ∈ M
t1 Ω ∂t ∂x ∂y
da cui segue l’equazione della membrana:
∂2z ∂2z ∂2z
ρ 2
− T0 ( 2 + 2 ) = F
∂t ∂x ∂y
coincidente con la (58).

4.8 Deduzione dell’equazione delle oscillazioni trasversali


di piccola ampiezza di una trave mediante il principio
di minima azione
L’energia cinetica di una trave omogenea di lunghezza L, sezione S e densità ρ
è data da:
Z L Z L
1 ∂z 1 ∂z
E= dm( )2 = ρS( )2 dx (151)
0 2 ∂t 0 2 ∂t
dove z(x, t) rappresenta la deformata istantanea della trave con x ∈ [0, L].
L’energia potenziale U d associata alla deformazione elastica può essere scritta
come il lavoro interno fatto dal momento M , ossia:
Z Z
1 1 L ∂2z ∂2z
Ud = M dϕ = EJ 2 2 dx (152)
2 trave 2 0 ∂x ∂x
essendo E il modulo elastico del materiale e J il momento d’inerzia rispetto
all’asse neutro.
Supposto inoltre che la trave sia sollecitata da un carico distribuito istanta-
neo F (x, t) positivo verso l’alto, l’azione per la trave diventa:
Z t2
AZ[z] = (E − U d + zF )dt = (153)
t1
Z t2 Z L
1 ∂z 1 ∂2z
dt ( ρS( )2 − EJ( 2 )2 + zF )dx
t1 0 2 ∂t 2 ∂x
Calcoliamo allora la variazione prima dell’azione. Sia ora:
© ª
M = v(x, t)| v = 0, ∂v/∂x = 0 in x = 0, L, v|t=t1 = v|t=t2 = 0
Segue dopo brevi calcoli che:
¯
d ¯¯
δAZ[z; v] = AZ[z + v] = (154)
d ¯ =0
Z t2 Z L
∂z ∂v ∂2z ∂2v
dt (ρS − EJ 2 2 + vF )dx
t1 0 ∂t ∂t ∂x ∂x

51
G. Sciortino - Meccanica Computazionale

Il primo termine, integrando per parti nel tempo, può essere così trasformato:
Z t2 Z L Z L Z t2
∂z ∂v ∂z ∂v
dt ρS dx = dx ρS dt =
t1 0 ∂t ∂t 0 t1 ∂t ∂t
Z L ¯t Z t2
∂z ¯¯ 2 ∂2z
dx( ρS v ¯ − ρS 2 vdt) = (155)
0 ∂t t1 t1 ∂t
Z t2 Z L 2
∂ z
− dt ρS 2 vdx
t1 0 ∂t

avendo tenuto conto che v|t=t1 = v|t=t2 = 0 per l’appartenenza di v a M.


Il secondo termine, integrando due volte per parti nello spazio e ricordando
che v = 0, ∂v/∂x = 0 in x = 0, L, diventa:
Z Z Z t2 ¯L Z L
t2 L
∂2z ∂2v ∂ 2 z ∂v ¯¯ ∂ 3 z ∂v
dt − EJ 2 2
dx = dt( −EJ 2 ¯ + EJ 3 dx) =
t1 0 ∂x ∂x t1 ∂x ∂x 0 0 ∂x ∂x
Z t2 ¯L Z L
∂3z ¯ ∂4z
dt( EJ 3 v ¯¯ − EJ 4 vdx) = (156)
t1 ∂x 0 0 ∂x
Z t2 Z L
∂4z
− dt EJ 4 vdx
t1 0 ∂x

Inserendo allora (155,156) nella (154) e annullando la variazione prima dell’azione,


segue:
Z t2 Z L
∂2z ∂4z
δAZ[z; v] = (−ρS − EJ + F )vdxdt = 0
t1 0 ∂t2 ∂x4
∀v ∈ M

da cui l’equazione:
∂2z ∂4z
ρS + EJ =F
∂t2 ∂x4
coincidente con la (95).

52
G. Sciortino - Meccanica Computazionale

5 METODI ALLE DIFFERENZE FINITE


5.1 Considerazioni generali
In quel che segue faremo riferimento ai soli metodi numerici basati su una ap-
prossimazione alle differenze finite.
Per schema numerico intendiamo pertanto una opportuna trasformazione di
una o più equazioni differenziali in un insieme di equazioni algebriche che coin-
volgono i valori che la o le funzioni incognite assumono in punti computazionali
detti nodi, definiti da un reticolo di discretizzazione che ricopre il dominio di
definizione delle variabili indipendenti.
Le considerazioni che seguono, si riferiscono soprattutto alle applicazioni di
tali schemi alle equazioni differenziali alle derivate parziali del primo ordine di
tipo iperbolico e anche parabolico. L’equazione tipo su cui lavoreremo avrà
dunque la forma:
∂U ∂U
+ A. =E (157)
∂t ∂x
oppure se ammette forma conservativa la:

∂U ∂F(U)
+ =E (158)
∂t ∂x
dove:

U + [U1 (x, t), U2 (x, t), ...UN (x, t)]


T

E + [E1 (x, t, U), E2 (x, t, U), ...EN (x, t, U)]


T

dF(U)
=A
dU
ed essendo A una matrice N × N reale che, nel caso di sistemi iperbolici, ha
autovalori tutti reali ed è diagonalizzabile.
Il caso più semplice della equazione (157) è la cosiddetta scalar linear wave
equation che ha la forma:
∂Z ∂Z
+C =0 (159)
∂t ∂x
dove Z(x, t) è l’incognita e C è una costante.
Tale equazione verrà spesso usata per mettere in luce in maniera semplice ed
intuitiva alcune proprietà degli schemi numerici. L’utilizzo e l’implementazione
di specifici codici, non può prescindere da una analisi delle proprietà che uno
schema numerico deve possedere per essere in grado di rappresentare in maniera
adeguata una forma approssimata di una assegnata equazione differenziale. Tre
sono le caratteristiche fondamentali che deve possedere uno schema numerico:
esso deve risultare consistente, convergente e stabile. Nel diagramma di
seguito riportato, si evidenzia come la consistenza definisca una relazione fra la
struttura dell’equazione differenziale e la struttura della corrispondente formu-
lazione discreta, la stabilità una relazione tra la soluzione numerica computata

53
G. Sciortino - Meccanica Computazionale

e l’esatta soluzione dell’equazione discretizzata ed infine la convergenza una re-


lazione fra la soluzione esatta dell’equazione discretizzata e la soluzione esatta
dell’equazione differenziale.

Consistenza

struttura dell’equazione differenziale


m
struttura della corrispondente formulazione discreta

Stabilità

soluzione numerica computata


m
soluzione esatta dell’equazione discretizzata

Convergenza

soluzione esatta dell’equazione discretizzata


m
soluzione esatta dell’equazione differenziale

5.2 Analisi degli schemi numerici


5.2.1 Consistenza
Cominciamo con l’introdurre il concetto di consistenza con un semplice esempio.
Consideriamo l’equazione (159) che qui riscriviamo nella forma:

Zt + CZx = 0, C = cost > 0 (160)

Posto allora:
Zjn + Z(j∆x, n∆t)
con ∆x, ∆t > 0 e j, n interi, approssimando le derivate della Z nel generico
punto xj = j∆x, tn = n∆t nel seguente modo:

Zjn+1 − Zjn Zjn − Zj−1


n
Zt ' , Zx ' (161)
∆t ∆x

54
G. Sciortino - Meccanica Computazionale

e sostituendo nella (160) si ottiene:

Zjn+1 − Zjn Zjn − Zj−1


n
+C =0 (162)
∆t ∆x
che rappresenta l’equazione alle differenze associata alla (160) e alle formule
(161) adottate per approssimare le derivate. La (162) lega i valori che la Z
assume nei tre nodi N1,N2,N3 mostrati in Fig.2:

( n + 1) Δ t

N3

nΔt

N1 N2

( j − 1) Δx jΔx x

Fig.2

Sfruttando lo sviluppo in serie di Taylor di punto iniziale xj = j∆x, tn = n∆t


possiamo scrivere:
½
Zjn+1 = Zjn + Zt |nj ∆t + Zt t |nj ∆t2 /2! + Zt t t |nj ∆t3 /3! + ...
(163)
n
Zj−1 = Zjn − Zx |nj ∆x + Zx x |nj ∆x2 /2! − Zx x x |nj ∆x3 /3! + ...

che sostituite nell’equazione alle differenze (162) fornisce:

( Zt |nj + C Zx |nj )+
h i
Zt t |nj ∆t/2! − C Zx x |nj ∆x/2! + Zt t t |nj ∆t2 /3! + C Zx x x |nj ∆x2 /3! + ... = 0
(164)

Tale relazione mette in luce un aspetto molto importante che lega l’equazione
alle differenze (162) e l’equazione differenziale (160). Si nota infatti che i termini
entro le parentesi tonde esprimono esattamente ciò che l’equazione differenziale
(160) impone nel punto (xj , tn ), mentre i termini entro le parentesi quadre
rappresentano dei termini "spuri" che rappresentano l’errore strutturale che si
commette nel passare dalla forma differenziale alla forma discreta. In generale,

55
G. Sciortino - Meccanica Computazionale

tale termine prende il nome di errore di troncamento relativo al passaggio da una


equazione differenziale Dif f (U) = 0 ad una forma discretizzata Discr(Unj ) = 0.
Alla luce di quanto detto, possiamo dare la seguente definizione.
Data una forma approssimata alle differenze finite Discr(Unj ) = 0 di una
equazione differenziale Dif f (U) = 0, definiamo errore di troncamento ERR nel
generico nodo (xj , tn ) il valore:
¯ ¯
¯ ¯
ERR + ¯Discr(Unj ) − Dif f (U)|x=xj ,t=tn ¯

Uno schema numerico si dice allora consistente se l’errore di troncamento


tende a zero al tendere a zero degli intervalli di discretizzazione ∆x, ∆t. In
simboli:
Consistenza ⇔ lim ERR = 0
(∆x,∆t)−>0

Come si vede dalla (164) lo schema numerico definito dalla (162) è consis-
tente, essendo ERR = O(∆x) + O(∆t). Sulla base di quest’ultima, lo schema
viene inoltre detto del prim’ordine nello spazio e nel tempo (se fosse stato
ERR = O(∆x2 ) + O(∆t) avremmo detto del secondo ordine nello spazio e
del primo nel tempo).
Il concetto di consistenza è molto importante in quanto costituisce una prima
condizione necessaria affinché uno schema numerico possa fornire soluzioni che
approssimino bene quanto si vuole la soluzione esatta di una equazione differen-
ziale.

5.2.2 Convergenza
Discutiamo ora più in dettaglio il concetto di convergenza.
In termini molto intuitivi, diremo che lo schema numerico è convergente
alla soluzione esatta dell’equazione differenziale che discretizza, se la soluzione
esatta dell’equazione discretizzata approssima sempre meglio la soluzione esatta
dell’equazione differenziale al tendere a zero delle dimensioni del reticolo di
discretizzazione.
Formaliziamo quanto detto. Sia Dif f (U) = 0 l’equazione differenziale da
risolvere con assegnate condizioni al contorno e iniziali per t = 0. Ad un certo
istante t > 0 sia U(x, t) la soluzione esatta della Dif f (U) = 0 in x, t e Unj quella
esatta della Discr(Unj ) = 0 nel punto xj = j∆x, t = n∆t ottenuta con identiche
condizioni iniziali e al contorno dell’equazione differenziale. Se si verifica che:
¯ ¯
Convergenza ⇔ lim max ¯U(j∆x, n∆t) − Unj ¯ = 0 ,∀t > 0
(∆x,∆t)−>0 j

diremo che lo schema numerico è convergente. In generale non è necessario


per la convergenza che (∆x, ∆t) tendano a zero in maniera arbitraria in quanto
in genere il loro rapporto deve rispettare la condizione di stabilità più avanti
definita. E’ evidente inoltre che al tendere di ∆t a zero, il numero di passi n
per raggiungere un fissato istante t, tende all’infinito.

56
G. Sciortino - Meccanica Computazionale

5.2.3 Stabilità
Premettiamo che l’analisi di stabilità che tratteremo, è una analisi lineare, nel
senso che a rigore si applica ad equazioni di tipo lineare. L’analisi di stabilità
di tipo non lineare, è a tutt’oggi non ancora sufficientemente sviluppata per
poter essere sintetizzata in termini sufficientemente generali. Va però detto che
l’analisi lineare fornisce informazioni estremamente utili se utilizzate come linee
guida per i problemi non lineari, ferma restando la necessità di confermarne la
validità in campo non lineare mediante sperimentazione numerica.
Consideriamo allora l’equazione (157) supponendo che la matrice A e il vet-
tore E siano costanti, in modo da considerare una equazione lineare. Sia poi
U(x, t) una soluzione della equazione (157) e W(x, t) una perturbazione sovraim-
posta a U. Imponendo allora che U(x, t) + W(x, t) soddisfi ancora la (157) e
ricordando che U(x, t) per ipotesi la soddisfa, segue che W(x, t) deve verificare
l’equazione:
∂W ∂W
+ A. =0 (165)
∂t ∂x
ossia l’omogenea associata alla (157). Studiando come evolve la pertur-
bazione W, si analizza la stabilità della soluzione U(x, t) rispetto ad una per-
turbazione sovraimposta. Si può dimostrare, data la linearità della (165), che
per lo studio della stabilità è sufficiente analizzare il comportamento di soluzioni
elementari della (165) del tipo:
Wf = VeIh(x−λt) (166)

dove I + −1, h un fissato numero d’onda reale e λ, V uno scalare e un
vettore da determinare. Imponendo che la Wf soddisfi la (165), si ricava im-
mediatamente che (λ, V) devono essere rispettivamente una coppia autovalore-
autovettore della matrice A. Essendo per ipotesi il sistema (165) iperbolico,
segue che gli autovalori di A sono tutti reali e quindi anche λ lo è. Il significato
fisico di λ è chiaramente quello di una celerità dell’onda sinusoidale rappresen-
tata dalla Wf . Segue che il modulo della perturbazione elementare Wf risulta
costante al variare di t e pari a:
¯ ¯
¯ ¯
|Wf | = |V| ¯eIh(x−λt) ¯ = |V|
¯ ¯
in quanto se λ è reale ¯eIh(x−λt) ¯ = 1. Poichè la perturbazione Wf non si
amplifica nel tempo, possiamo dire che la U(x, t) è una soluzione stabile.
Sia ora dato uno schema numerico Discr(Unj ) = 0 che discretizzi la (157),
e sia Discrom (Unj ) = 0 lo schema numerico che si ottiene ponendo E → 0 in
Discr(Unj ), ossia lo schema numerico che discretizza l’omogenea associata (165).
L’analisi di stabilità di tale schema viene fatta paragonando il comportamento
della soluzione elementare (166) con il comportamento di soluzioni elementari
analoghe ma relative all’equazione discretizzata Discrom (Unj ) = 0. Per la mag-
gior parte degli schemi di interesse applicativo (diremo più avanti quali sono
questi schemi), tali soluzioni elementari possono essere poste nella forma:
Wfjn = VeIh(j∆x−cn∆t) (167)

57
G. Sciortino - Meccanica Computazionale

dove V è lo stesso vettore che compare nella (166) e ”c” prende il nome di
celerità numerica. Anticipiamo che, a differenza di λ che è reale, in genere c
è un numero complesso che si può quindi porre nella forma c = cR + IcI . Di
conseguenza segue:
¯ ¯
Wfjn = VeIh(j∆x−cR n∆t) ehcI n∆t =⇒ ¯Wfjn ¯ = |V| ehcI n∆t (168)

Di conseguenza se cI > 0 la perturbazione cresce esponenzialmente nel tempo


e lo schema numerico è instabile, se cI ≤ 0 la perturbazione non cresce in modulo
e lo schema è stabile. In pratica per valutare la stabilità di uno schema numerico
si procede nel seguente modo. Ponendo Yn + VeIh(−cn∆t) la (167) diventa:

Wfjn = Yn eIh(j∆x) (169)

Imponendo che questa soddisfi la Discrom (Wfjn ) = 0, si arriva sempre ad


una relazione del tipo:
Yn+1 = G.Yn (170)
dove G è una matrice a valori complessi detta di amplificazione che dipende
dallo schema numerico, da h, ∆x e ∆t. Gli schemi numerici per i quali il vettore
V è lo stesso sia per la (166) che per la (167) (che sono peraltro quelli di maggior
interesse), sono quelli per i quali la matrice G è un polinomio della matrice A
ossia G = G0 + a1A + a2A2 + ....., (con i coefficienti dipendenti da h, ∆x e ∆t)
e di conseguenza V è autovettore sia di A che di G anche se in generale con
autovalori diversi.
L’azione lineare della matrice G su Yn rappresenta la trasformazione che
Yn subisce nel passaggio¯ discreto
¯ dall’istante n∆t all’istante (n + 1)∆t. Poichè
dalla (169) segue che ¯Wfjn ¯ = |Yn | porremo la seguente definizione: lo schema
numerico Discr(Unj ) = 0 è stabile se:
¯ n+1 ¯
¯Y ¯ ≤ |Yn | ⇐⇒ |G.Yn | ≤ |Yn | ⇒ Stabile (171)

viceversa:
¯ n+1 ¯
¯Y ¯ > |Yn | ⇐⇒ |G.Yn | > |Yn | ⇒ Instabile (172)

Lo studio della stabilità è dunque ricondotto alla determinazione delle con-


dizioni che devono soddisfare ∆x e ∆t affinchè sia soddisfatta la disequazione:

|G.Y| ≤ |Y| , ∀Y ∈ CN , ∀h ∈ R (173)

Si possono allora verificare tre casi:


1) la (173) è verificata ∀∆x,∆t > 0. In tal caso lo schema numerico si dice
linearmente incondizionatamente stabile.
2) la (173) non è verificata per nessun valore ∆x,∆t > 0. In tal caso lo
schema numerico si dice linearmente incondizionatamente instabile.
3) la (173) è verificata per quei valori di ∆x,∆t > 0 che verificano una
disuguaglianza del tipo f (∆x,∆t) ≤ 0. In tal caso lo schema numerico si dice

58
G. Sciortino - Meccanica Computazionale

linearmente condizionatamente stabile e la f (∆x,∆t) ≤ 0 prende il nome di


condizione di stabilità.
L’importanza della stabilità di uno schema numerico è legata al cosiddetto
teorema di Lax. Poichè la consistenza da sola è una condizione unicamente
necessaria per la convergenza, il teorema di Lax asserisce che, almeno per le
equazioni lineari con condizioni iniziali e al contorno ben poste, consistenza e
stabilità di uno schema numerico, insieme, sono condizioni necessarie e suf-
ficienti per la convergenza della soluzione discretizzata alla soluzione esatta
dell’equazione differenziale.

5.3 Schemi espliciti e schemi impliciti


Gli schemi numerici alle differenze finite possono dividersi in due grandi cate-
gorie: schemi espliciti e schemi impliciti. Sia al solito Discr(Unj ) = 0 una forma
discretizzata dell’equazione Dif f (U) = 0. Diremo che lo schema adottato è es-
plicito se può essere posto nella forma:

Un+1
j = F(Un , Un−1 , ..., Un−k ) (174)
k intero ≥ 0

Il secondo membro della precedente indica simbolicamente che la dipendenza


funzionale è relativa ai valori che U assume negli istanti n∆t, (n − 1)∆t, ...., (n −
k)∆t calcolati in opportuni punti (j − r)∆x, ...., (j)∆x, ..., (j + s)∆x con r, s ≥ 0
interi. Uno schema di questo tipo è detto a (k + 2)−livelli in quanto coinvolge
grandezze relative a (k + 2) istanti.
Sono impliciti gli schemi che non possono essere posti nella forma (174).Gli
schemi impliciti coinvolgono dunque almeno due valori che la U assume all’ultimo
livello (n + 1)∆t. Questo fatto rende accoppiate le equazioni nelle incognite
Un+1
j , la cui determinazione richiede sempre la soluzione di un sistema di
equazioni algebriche. Negli schemi espliciti, invece, le equazioni possono essere
risolte una alla volta, essendo disaccoppiate. Un’altra importante differenza fra
schemi espliciti ed impliciti è che questi ultimi sono generalmente incondizion-
atamente stabili, mentre gli espliciti sono condizionatamente stabili e possono
essere utilizzati unicamente nel rispetto della condizione di stabilità che impone
determinate limitazioni al ∆t di integrazione.

5.4 Condizione di stabilità di Von Neumann


Un metodo molto usato per analizzare la stabilità di uno schema numerico,
è quello proposto da Von Neumann. Questo metodo si basa sulla analisi degli
autovalori della matrice di amplificazione G. Siano g1 , g2 , ... gN gli N autovalori
(in genere complessi) di G. Si definisce raggio spettrale della matrice G (che
indicheremo con Rs(G)) il più grande fra i moduli degli N autovalori: Rs(G) =
max(|g1 | , |g2 | , ... |gN |). La condizione di stabilità di Von Neumann afferma che
condizione necessaria per la stabilità di uno schema numerico è che Rs(G) ≤ 1.
Tale condizione diventa anche sufficiente se G è diagonalizzabile. Per quegli

59
G. Sciortino - Meccanica Computazionale

schemi numerici per i quali V è autovettore sia della matrice A che di G, la


diagonalizzabilità di A implica quella G, ed in tal caso la condizione di stabilità
di Von Neumann è necessaria e sufficiente.
Facciamo ora una semplice applicazione di tale metodo alla scalar wave equa-
tion. Tale applicazione permette inoltre di mettere in luce una interessante
interpretazione euristica della instabilità numerica.
Consideriamo allora l’equazione:

Zt + CZx = 0, C = cost > 0 (175)

e discretizziamola come già visto:

Zjn+1 − Zjn Zjn − Zj−1


n
+C = 0 ⇐⇒ Zjn+1 − Zjn + r(Zjn − Zj−1
n
)=0 (176)
∆t ∆x
con r + C∆t/∆x. Posto allora Zjn = Y n eIαj (α + h∆x) imponendo che
questa soddisfi la (176), si trova Y n+1 = gY n essendo g il fattore di amplifi-
cazione (in tal caso la matrice G è 1x1 e si parla di fattore) definito da:

g = 1 + r(e−Iα − 1)

Segue calcolando il modulo dopo qualche semplificazione:


p
|g| = 1 + 2r(1 − cos(α))(r − 1) ⇒ |g| ≤ 1 ⇐⇒ r ≤ 1

La condizione di stabilità per lo schema (176) è dunque:

C∆t/∆x ≤ 1

In particolare per r = 1 la (176) fornisce Zjn+1 = Zj−1 n


. Tale relazione,
tenendo conto che la soluzione esatta della (175) è una funzione del tipo Z =
f (x−Ct), fornisce in tal caso una soluzione discreta che nei nodi computazionali
coincide con la soluzione esatta dell’equazione differenziale (175).
Diamo ora una spiegazione dell’instabilità numerica, sfruttando un’analogia
fisica. Nell’equazione discretizzata (176) inseriamo gli sviluppi di Taylor (163).
Sfruttando inoltre la relazione:

Zt + CZx = 0 ⇒ Ztt = −CZxt = −CZtx = −C(−CZx )x = C 2 Zxx

si arriva dopo alcuni passaggi alla:

n n (1 − r) n
( Zt |j + C Zx |j ) = C∆x Zxx |j + O(∆x2 + ∆t2 ) (177)
2
L’equazione da cui siamo partiti "Zt + CZx = 0" è una equazione iperbolica
di puro trasporto. Lo schema numerico (176) essendo equivalente alla (177)
impone (nel generico nodo computazionale), invece che una equazione di puro
trasporto iperbolica, una equazione di trasporto-diffusione di tipo parabolico a
causa della presenza del termine di derivata seconda in x a secondo membro. Il

60
G. Sciortino - Meccanica Computazionale

coefficiente (1−r)2 C∆x può essere interpretato, in analogia alle equazioni idrodi-
namiche, come una viscosità artificiale ”υ a ” che lo schema numerico introduce.
Rispetto però alla viscosità reale che è sempre positiva dovendo dissipare ener-
gia, la ”υa ” è dotata di segno.
Se infatti r < 1 (condizione di stabilità) segue che υa > 0 e il termine
diffusivo υ a Zxx |nj diventa un termine"pozzo" che smorza l’onda durante il suo
propagarsi. Se r = 1 segue che υa = 0, non vi è dissipazione e lo schema
numerico fornisce la soluzione esatta. Se infine r > 1 (condizione di instabilità)
segue che υ a < 0. Una viscosità negativa rende il termine diffusivo un termine
"sorgente" ed in tal caso l’onda nel suo propagarsi si amplifica senza limite,
rendendo instabile lo schema numerico
Concludendo tale paragrafo, possiamo riassumere brevemente quanto ot-
tenuto: consistenza e stabilità di uno schema numerico, studiate in ambito
lineare, sono delle condizioni imprescindibili che ogni schema deve soddisfare
per poter essere applicato con successo. Come abbiamo visto, limitandoci a
equazioni lineari, tali condizioni sono necessarie e sufficienti per la convergenza
della soluzione approssimata fornita dallo schema numerico alla soluzione esatta
dell’equazione differenziale.
Nell’ambito delle equazioni non lineari, le suddette condizioni non sono in
generale sufficienti pur rimanendo necessarie. Allo stato attuale delle conoscenze
infatti, solo la sperimentazione numerica può "empiricamente confermarne" la
sufficienza.

5.5 Dissipazione e Dispersione


Ritorniamo al confronto fra le soluzioni elementari della (165) e quelle di un
associato schema numerico:
Wf = VeIh(x−λt)
Wfjn = VeIh(j∆x−cn∆t) = Yn eIhj∆x (178)
Yn + VeIh(−cn∆t)
Come abbiamo visto la Wfjn soddisfa l’equazione discretizzata se e solo se
Yn+1 = G.Yn . E quindi in base alla definizione di Y n + VeIh(−cn∆t) se e solo
se (I matrice identità):
(G − Ie−Ihc∆t ).V = 0 (179)
Dunque la VeIh(j∆x−cn∆t) soddisfa l’equazione discretizzata se e solo se V
è autovettore della matrice di amplificazione G e e−Ihc∆t è il corrispondente
autovalore. Assumendo quale incognita la celerità numerica complessa c, per
ricavarla si deve risolvere l’equazione Det(G−gI) = 0 e ricavare c dalla relazione:
g = e−Ihc∆t
Ovviamente avremo tante c quanti sono gli autovalori di G. Considerando
allora il k − esimo autovalore gk (k = 1, 2, ...N ) segue:
gk = e−Ihck ∆t ⇒ ck = − arg(gk )/(h∆t) + I log(|gk |)/(h∆t) (180)

61
G. Sciortino - Meccanica Computazionale

avendo sfruttato la definizione di logaritmo di un numero complesso per la


quale: log(gk ) + log(|gk |) + I arg(gk ) dove arg(·) indica l’argomento del numero
complesso, ossia l’angolo (positivo in verso antiorario) che il vettore che lo rap-
presenta forma nel piano complesso con l’asse reale. Sostituendo nella (178) e
ragionando sui k − esimi autovalori e autovettori segue:

Wf = Vk eIh(x−λk t)
Wfjn = Vk eIm(ck )nh∆t eIh(j∆x−Re(ck )n∆t) (181)
Re(ck ) = − arg(gk )/(h∆t), Im(ck ) = log(|gk |)/(h∆t)

Confrontando la Wf e la Wfjn , notiamo allora delle importanti differenze.


Innanzi tutto, il fatto che ck sia complessa implica, come era già stato messo
in evidenza, che il modulo della soluzione numerica non è costante ma variabile
nel tempo secondo un fattore esponenziale eIm(ck )nh∆t . Quindi se Im(ck ) >
0 ⇔ |gk | > 1 (instabilità) la soluzione numerica si amplificherà indefinitamente
al crescere di n. Se invece Im(ck ) ≤ 0 ⇔ |gk | ≤ 1 (stabilità) la soluzione
numerica non crescerà al crescere di n, tendendo a smorzarsi nel caso valga la
disuguaglianza stretta e a rimanere costante in modulo nel caso di uguaglianza.
Diremo allora che uno schema numerico è dissipativo relativamente al k − esimo
autovalore gk di G se |gk | < 1. Il livello di dissipazione di uno schema numerico
può essere controllato (reso arbitrariamente vicino all’unità |gk | . 1) agendo
sull’ampiezza di ∆t, ∆x.
Un’ altra importante differenza che emerge dal confronto delle Wf e la
Wfjn , è che Re(ck ) è l’analogo di λk e rappresenta quindi la celerità con cui lo
schema numerico fa evolvere l’onda Wfjn . Va però tenuto conto che, essendo
per ipotesi in ambito lineare, λk è una costante (in particolare non dipende da
h) mentre Re(ck ) = f unz(∆t, ∆x, h). Quindi mentre le varie armoniche Wf ,
al variare di h, viaggiano tutte alla stessa velocità λk , le armoniche Wfjn , al
variare di h, viaggiano in generale a velocità differenti. In analogia con le onde
della fisica, tale aspetto della soluzione numerica prende il nome di dispersività
e lo schema numerico si dice in tal caso dispersivo. Anche la dispersività può
essere controllata agendo sull’ampiezza di ∆t, ∆x.
In letteratura la bontà di uno schema numerico viene spesso analizzata
facendo riferimento ai seguenti tre parametri:

Re(ck )
rk +
λk
ek + h∆t(λk − Re(ck ))
Rk + eIm(ck )h∆t)

detti rispettivamente rapporto dispersivo,errore di fase,coefficiente di ampli-


ficazione. Inoltre è abbastanza evidente che la consistenza implica rk → 1, ek →
0, Rk → 1, facendo tendere opportunamente a zero ∆t e ∆x.

62
G. Sciortino - Meccanica Computazionale

Bibliografia

P.Duchteau,D.W. Zachmann,Theory and Problems of Partial


Differential Equations, Shaum’s Outline Series,McGRAW-HILL
BOOK COMPANY,1986, ISBN 0-07-017897-6
V.,P.,Mikhailov,Partial Differential Equations, ed. Mir, 1978
L.,D.,Landau, E.M.,Lifsits, Meccanica, ed. Editori Riuniti,
Edizioni Mir,1982
A.,N.,Tichonov,A.,A.,Samarskij, Equazioni della Fisica
Matematica, ed. Mir,1981
V.,I.,Arnold,Metodi Matematici della Meccanica Classica,
ed. Editori Riuniti, Edizioni Mir,1979
S.,Wolfram,Mathematica, A System for Doing Mathematics
by Computer, ed. Addison-Wesley Publishing Company, ISBN
0-201-51502-4
M.,B.,Abbott,Computation Hydraulics, ed. Pitman, 1979

63