di fluidi bifase
Camilla Cattivelli
Luca Fenini
Indice
i
Parte I
Risoluzione di problemi di
fluidodinamica
1 Le equazioni di Navier-Stokes
Per arrivare a poter parlare di fluidi a superficie libera è ovvio che una trattazione esaustiva
debba partire dallo studio dei fluidi in generale. Nel nostro caso noi ci concentreremo su
fluidi Newtoniani incomprimibili a densità costante, il cui moto è notoriamente governato
dalle equazioni di Navier-Stokes. Queste equazioni si ricavano dai principi del bilancio
della quantità di moto e della conservazione della massa (equazione di continuità) agenti
su qualsiasi volume infinitesimo e assumono la forma di:
∂u + (u· ∇)u − ν∆u + ∇p = f x ∈ Ω, t > 0
∂t (1.1)
divu = 0 x ∈ Ω, t > 0
dove u rappresenta il vettore velocità del fluido, ρ la sua densità, p il rapporto fra pressione
e densità, µ la viscosità dinamica, ν = µρ la viscosità cinematica, f una generica forzante
esterna, e infine Ω un dominio contenuto in Rd con d=2,3.
div(u) = 0 (1.4)
2
Nella nostra trattazione assumeremo sempre inoltre che il fluido sia caratterizzato anche
da densità costante in spazio e tempo: questa ipotesi aggiuntiva ci permette di dare per
scontato l’annullamento della derivata totale della densità e quindi per noi la solenoidalità
del campo u sarà equivalente all’equazione di continuità.
Torniamo ora ad occuparci della (??) e evidenziamo come per poter affermare di avere
un problema ben posto sia necessario fornire anche condizioni iniziali
e al contorno ∀t > 0
u(x, t) = ϕ(x, t) ∀x ∈ ΓD
(1.7)
ν ∂u − pn (x, t) = ψ(x, t)
∀x ∈ ΓN
∂n
con u0 , φ e ψ funzioni vettoriali assegnate, n versore normale uscente rispetto alla frontiera
◦ ◦
del dominio ∂Ω, ΓD e ΓN sottoinsiemi aperti di ∂Ω tali che ΓD ∪ ΓN = ∂Ω e ΓD ∩ ΓN = ∅.
L’esistenza e l’unicità della soluzione in senso classico sono tuttavia due concetti che non
dipendono solo dalla buona positura data dalle condizioni iniziali e al bordo. Limitando
l’analisi ai casi 2D e 3D, infatti si può dimostrare che il problema sopra presentato ammette
un’unica soluzione nel senso classico solo nel caso bidimensionale. In 3 dimensioni invece si
vengono a formare fenomeni che generano singolarità nella soluzione e quindi non si riesce
a dimostrare l’unicità della soluzione per tempi non piccoli.
da cui, scaricando le derivate sulla v usando la formula di Green nel secondo e quarto
termine, otteniamo la formulazione debole per l’equazione di bilancio della quantità di
moto
Z Z Z
∂u
· v dΩ + ν∇u· ∇v dΩ + [(u· ∇)u]· v dΩ +
Ω ∂t
Z Ω
Z Z Ω (1.8)
∂u
− p divv dΩ = f · v dΩ + ν − pn · v dγ ∀v ∈ V.
Ω Ω ∂Ω ∂n
A questo punto procediamo a cercare la forma debole dell’equazione di continuità e que-
sta volta scegliamo una funzione test q scalare in uno spazio Q ancora da specificare.
Integrando su Ω otteniamo
Z
q divu dΩ = 0 ∀q ∈ Q. (1.9)
Ω
3
Come scegliamo ora gli spazi V e Q in cui cercare rispettivamente la velocità e la pres-
sione?
Iniziamo conRlo spazio in cui cerchiamo la velocità e come sempre, per soddisfare la richie-
sta di avere Ω ∇u· ∇v dΩ finito, scegliamo quel sottospazio delle funzioni H 1 (Ω) che si
annullano sul bordo di Dirchlet e cioè
Questo è uno spazio di Hilbert con la norma H1 (Ω) , dove H1 (Ω) = [H 1 (Ω)]d e la norma
è definita come
Xd 1
2
kvkH1 (Ω) = kvk k2H 1 (Ω) .
k=1
Inoltre grazie alla disuguaglianza di Poincarè possiamo affermare che la norma k · kH1 (Ω)
è equivalente alla seminorma | · |H1 (Ω) .
Ugualmente per avere ben definito l’integrale della (??) scegliamo q (e quindi anche la
pressione p) in uno spazio di funzioni
Q = L2 (Ω).
Osserviamo tuttavia che nella richiesta dello spazio in cui cerchiamo la pressione è richiesta
un’ulteriore condizione. Infatti nelle equazioni di Navier-Stokes la pressione compare sem-
pre sotto il simbolo di gradiente e quindi, nel caso di condizioni al bordo solo di Dirichlet,
NON avremo l’unicità della pressione. Se infatti p è soluzione delle equazioni allora anche
p̄ = p + c sarà ugualmente soluzione in quanto ∇p = ∇p̄. Per ovviare a questo problema
una possibile soluzione utile dal punto di vista numerico è quello di assegnare il valore della
pressione in un punto qualsiasi del dominio in modo da determinare la pressione in modo
univoco: chiedo quindi
p(x0 ) = p0 . (1.10)
Dal punto di vista analitico però nasce il problema che p è una funzione scelta in L2 (Ω) e
quindi non ha senso definirla puntualmente in x0 ∈ Ω.
Dal punto di vista analitico è quindi più corretto chiedere una condizione non puntuale ma
integrale e quindi la scelta che in genere si fa è quella di chiedere p come l’unica pressione
a media nulla ossia Z
p dΩ = 0. (1.11)
Ω
4
compare non sotto gradiente in questa condizione. Pertanto avremo che l’insieme Q in cui
cerchiamo la pressione è:
Q = L2 (Ω) se ΓN =
/ ∅,
Q = L20 (Ω) se ΓN = ∅.
Osservazione 1.1. Nel caso di condizioni solo di Dirichlet dobbiamo anche chiedere che sia
soddisfatta la condizione di compatibilità su ϕ:
Z Z Z Z
0= divu dΩ = u· n dγ − u· ∇1 dΩ = ϕ· n dγ. (1.12)
Ω ∂Ω Ω ∂Ω
Ora che abbiamo trovato gli spazi adeguati in cui cercare le soluzioni controlliamo che
questi spazi siano sufficienti affinchè tutti gli integrali della (??) siano ben definiti :
Z
∂u
1. Il termine · v dΩ può essere interpretato come dualità su V in modo da
Ω ∂t
ottenere
| hu̇, viV 0 ,V | ≤ ku̇kV 0 kvkV = ku̇kV 0 kvkH1 (Ω) . (1.13)
Questo termine è finito se e solo se u̇ ∈ V 0 .
ma
Z Xd Z X d
∂vk 2 ∂vk 2
kdivvk2L2 (Ω)
= dΩ ≤ c dΩ =
Ω k=1 ∂xk Ω k=1 ∂xk
Z
∂v1 2 ∂v2 2 ∂v 2
d
=c + + ··· + dΩ = c|v|2H1 (Ω) .
Ω ∂x1 ∂x 2 ∂xd
4. Un ragionamento diverso vale per il termine non lineare convettivo in cui bisogna
usare la disuguaglianza di Holder a più fattori per ottenere
Z
(1.17)
[(u· ∇)u]· v dΩ ≤ k∇ukL2 (Ω) kukL4 (Ω) kvkL4 (Ω) ,
Ω
5
e da qui sfruttare le immersioni di Sobolev che ci dicono che se d = 2 allora
H1 (Ω) ,→ Lp (Ω) con p ∈ [2, ∞), e se d ≥ 3 allora H1 (Ω) ,→ Lp (Ω) con p ∈ [2, n−2
2n
).
Lavorando noi in 2 o 3 dimensioni avremo quindi che H (Ω) ,→ L (Ω) e quindi
1 4
5. Per quanto riguarda i termini a secondo membro basterà chiedere f ∈ L2 (Ω), mentre
per l’integrale di bordo, ricordando la scelta di V che fa annullare le funzioni su ΓD
e le condizioni al bordo (??), si ottiene
Z Z
∂u
(ν − pn)· v dγ = ψ· v dγ ∀v ∈ V. (1.19)
∂Ω ∂n ΓN
Osserviamo ora che per avere la (??) minore di infinito serve u̇ ∈ V 0 e questo deve
valere ∀t > 0. La velocità la cercheremo quindi tale che u(x, t) ∈ L2 (R+ ; V ) con u̇(x, t) ∈
L2 (R+ ; V 0 ). Dalla teoria sappiamo inoltre che queste due condizioni ci regalano u(x, t) ∈
C(R+ ; L2 (Ω)) e questo ci permette di dare un senso alle condizioni al bordo che sono
definite puntualmente.
La formulazione debole del nostro problema in definitiva è:
cerco u(x, t) ∈ L2 (R+ ; V ) con u̇(x, t) ∈ L2 (R+ ; V 0 ), p ∈ L2 (R+ ; Q) tale che:
Z Z Z
∂u
· v dΩ + ν∇u· ∇v dΩ + [(u· ∇)u]· v dΩ +
∂t
Ω Z Ω Z Ω Z
− p divv dΩ = f · v dΩ + ψ· v dγ ∀t > 0, ∀v ∈ V (1.20)
Ω Ω ΓN
Z
q divu dΩ = 0 ∀t > 0, ∀q ∈ Q.
Ω
6
2 Il problema di Stokes
Introduciamo ora il problema di Stokes che è un tipo particolare di problema di punto-sella.
La parte teorica verrà analizzata nel caso del problema di Stokes generalizzato che assume
la seguente forma
in Ω
αu − ν∆u + ∇p = f
divu = 0 in Ω (2.1)
su ∂Ω,
u=0
Osserviamo che le formulazione presentata è quella che si ottiene con condizioni di Dirichlet
omogenee; in caso contrario avremmo a termine noto due generici funzionali F (v) e G(q)
rispettivamente nella prima e nella seconda equazione, in cui saranno contenuti i dati
relativi al dato al bordo di Neumann (se presente) e al rilevamento del dato di Dirichlet.
A questo punto, al fine di ricavare l’esistenza e unicità della soluzione di(??), sfruttiamo
7
la natura del problema di Stokes che lo fa assomigliare a un problema di punto-sella. Per
la precisione vale il teorema che non dimostreremo che afferma che:
Teorema 2.1. La coppia (u, p) è soluzione di (??) se e solo se rappresenta un punto-sella
per il funzionale lagrangiano (in cui la pressione svolge il ruolo di moltiplicatore)
1
L(v, q) = a(v, v) + b(v, q) − (f , v),
2
e cioè
L(u, p) = min max L(v, q).
v∈V q∈Q
Ricordiamo inoltre che come già mostrato per le equazioni di Navier-Stokes si può
studiare il problema nella sola variabile u e ricavare poi a posteriori la pressione, in quanto
ci sono teoremi che ci possono garantire l’unicità della pressione p ∈ Q.
L’approssimazione alla Galerkin in sottospazi Vh ⊂ V e Qh ⊂ Q finito dimensionali del
problema (??) risulta immediata:
Cerco uh ∈ Vh e ph ∈ Qh tale che:
(
a(uh , vh ) + b(vh , ph ) = (f , vh ) ∀vh ∈ Vh ,
(2.6)
b(uh , qh ) = 0 ∀qh ∈ Qh .
Per la buona posizione di questo problema ci si appoggia al seguente teorema:
Teorema 2.2. Sia a una forma bilineare continua di costante γ e coerciva su Vh∗ definito
come
Vh,div = {vh ∈ Vh : b(vh , qh ) = 0 ∀qh ∈ Qh },
con costante di coercività α.
Sia b una forma bilineare continua di costante δ e che soddisfi la condizione: ∃ β eventual-
mente indipendente da h tale che
∀qh ∈ Qh ∃vh ∈ Vh : b(vh , qh ) ≥ βkvh kH1 (Ω) kqh kL2 (Ω) . (2.7)
ku − uh kV ≤ c1 inf ku − vh kV + c2 inf kp − qh kQ
vh ∈Vh qh ∈Qh
kp − ph kQ ≤ c3 inf ku − vh kV + c4 inf kp − qh kQ
vh ∈Vh qh ∈Qh
8
con
δ γ γ γ δ δγ
c1 = 1 + 1+ c2 = c3 = c1 c4 = 1+ + .
β α α β β αβ
b(vh , qh )
inf sup ≥ β. (2.8)
qh ∈Qh ,qh =0
/ / kvh kV kqh kQ
vh ∈Vh ,vh =0
Questo vale perchè la richiesta della (??) di valere per ogni qh implica che questa debba
valere anche per l’inf su Qh , mentre l’esistenza di un singolo v̄h ∈ Vh implica che il valore
generato da questo singolo v̄h sia di sicuro un valore di b(v̄h , qh ) minore di quello che si
genera valutando b sul sup su Vh .
{ϕj ∈ Vh }N
j=1 {φk ∈ Qh }M
k=1
come base rispettivamente per gli spazi Vh e Qh , con N = dim(Vh ) e M = dim(Qh ). Una
volta che abbiamo definito le basi possiamo scrivere qualsiasi funzione come combinazione
lineare delle funzioni di base: nel nostro caso avremo
N
X
uh (x) = uj ϕj (2.9)
j=1
M
X
ph (x) = p k φk . (2.10)
k=1
Scegliendo come funzioni test tutte le funzioni di base degli spazi Vh e Qh , e sostituendole
nella (??) otteniamo il sistema lineare
(
AU + BT P = F
(2.11)
BU = 0
Fi = (f , ϕi ).
9
Il sistema può essere riscritto attraverso l’utilizzo della matrice a blocchi S ∈ R(N +M )×(N +M )
A BT
U F
S= : S = (2.12)
B 0 P 0
Ovviamente il sistema appena scritto ammette una e una sola soluzione se e solo se la
matrice S è a rango pieno, e cioè se non è singolare. Questa proprietà vedremo che dipende
solo dalla matrice B in quanto A è una matrice simmetrica definita positiva e non crea
quindi problemi. Per la precisione si può mostrare che la richiesta necessaria su B discende
dalla condizione inf-sup. Risolvendo formalmente il sistema (??) dalla prima equazione
possiamo ricavare
U = A−1 (F − BT P),
che sostituita nella seconda equazione permette di ricavare un’espressione per la pressione,
ossia
P = (BA−1 BT )−1 BA−1 F. (2.13)
Osserviamo che il vettore BA−1 BT , detto complemento di Schur, risulta in genere mal
condizionato: nella risoluzione numerica si deve pertanto precondizionare il sistema con
opportuni precondizionatori dei quali tuttavia non parleremo in modo approfondito.
Il nostro obiettivo è quello di mostrare l’esistenza e unictà della soluzione del sistema
(??): dalla (??) deduciamo che è necessario che il complemento di Schur sia invertibile.
La matrice A grazie alla sua definizione attraverso la forma bilineare a è non singolare e
definita positiva, e quindi possiamo affermare che il complemento di Schur è non singolare
se e solo se il nulceo di BT è costituito dal solo vettore nullo.
Negare la condizione inf-sup discreta (??) equivale a chiedere che
∃ P∗ ∈ RM , P∗ =
/ 0 t.c VT BT P∗ = 0 ∀V ∈ RN . (2.14)
Dovendo valere per ogni possibile vettore V ∈ RN , la (??) implica che BT P∗ = 0 e cioè
che esiste un vettore P∗ non nullo nel nucleo di BT . Possiamo dunque afferma che
Ritornando alla nostra equazione ricavata formalmente, possiamo quindi dire che se vale
la condizione inf-sup allora si ha un complemento di Schur non singolare e quindi la (??)
è sensata dal punto di vista matematico e ci permette di ricavare un unico vettore della
pressione.
10
soddisfatta si creano invece dei problemi riguardanti l’unicità della pressione. Introducia-
mo dunque i cosiddetti modi spuri di pressione,ossia funzioni che non vengono colte dalla
forma bilineare b (nel caso del problema di Stokes queste funzioni sono pressioni che vengo-
no anche dette pressioni parassite). Questi modi spuri compaiono nella soluzione numerica
in quanto, detto p˜h un modo spurio, questo soddisfa l’equazione
Se dunque ph è una soluzione del problema di Stokes, allora anche la pressione ph + p˜h sarà
tale da soddisfare il vincolo di incomprimibilità e risulterà quindi anch’essa una soluzione.
Per evitare questo problema si possono utilizzare 2 approcci:
• scegliere coppie di spazi di elementi finiti Vh e Qh che soddisfino la condizione inf-sup;
La scelta di spazi polinomiali di ordini diversi risulta però in genere più complicata
e laboriosa nella programmazione numerica; si sono quindi cercate soluzioni a partire da
spazi polinomiali dello stesso ordine che tuttavia aumentino il numero di gradi di libertà
associati a Vh . Le scelte più comuni che creano una coppia di spazi stabili sono P1 b/P1 e
P1 -isoP2 /P1 , dove P1 b è lo spazio formato dalle funzioni a bolla (che aggiungono un nodo
in più nel centro dell’elemento), e lo spazio P1 -isoP2 è uno spazio P1 su una mesh Th/2
generata unendo i punti medi di ogni lato degli elementi di Th , creando cosi una mesh
più fine. Cosa si intende parlando della mesh Th/2 lo si intuisce dalla figura ?? (c) in cui
a partire dall’elemento generico di diametro h si creano 4 elementi di diametro h/2 che
compongono di fatto la nuova tassellazione Th/2 . Le funzioni di base per questa nuova
triangolazione vengono scelte come polinomi di grado 1 su ogni elementino di diametro
h/2; infine il nome isoP2 si riferisce al fatto che i gradi di libertà che entrano in gioco sono
gli stessi che si hanno con una scelta degli spazi P2 /P1 .
11
(a) (b) (c)
Figura 2.1: La figura (a) mostra i gradi di libertà (• per la velocità e per la pressione)
associati alla scelta degli spazi P1 /P1 e genera una coppia instabile, la (b)e la (c) sono
invece coppie stabili e le figure rappresentano i gradi di libertà associati rispettivamente
alla scelta degli spazi P1 b/P1 e P1 -isoP2 /P1 .
Il secondo tipo di approccio che si può utilizzare per evitare di generare modi spuri di
pressione è quello di introdurre un termine in più nella formulazione debole che garantisca
l’unicità della soluzione di Galerkin preservandone tuttavia la convergenza. Non solo:
vogliamo anche che il termine introdotto garantisca un ordine di convergenza legato al
grado polinomiale scelto per gli spazi funzionali. Se per esempio si sceglie di usare la
coppia instabile Pk /Pk vogliamo che il problema stabilizzato converga con ordine O(hk ).
Volendo inserire un termine per stabilizzare i modi spuri legati alla pressione, quello che
viene spontaneo fare è inserire un termine di stabilizzazione S(· , · ) : Q × Q: il problema
stabilizzato sarà quindi
(
a(uh , vh ) + b(vh , ph ) = F (vh ) ∀vh ∈ Vh
(2.16)
b(uh , qh ) − S(ph , qh ) = 0 ∀qh ∈ Qh .
νk∇uh k2L2 (Ω) + S(ph , ph ) ≤ ckf kL2 (Ω) k∇uh kL2 (Ω) . (2.18)
Nel caso in cui si possa avere S simmetrica definita positiva, allora avremmo dei controlli
sia per la norma di uh che per la pressione ph . In questo modo si garantirebbe l’unicità
della pressione senza dover richiedere che valga la condizione inf-sup discreta. Tuttavia
questa richiesta può essere indebolita e vale il seguente teorema:
Teorema 2.3. Affinchè il problema (??) ammetta un’unica soluzione che converga con
ordine O(hk ) in spazi a elementi finiti Pk /Pk deve valere che:
12
1. S(· , · ) sia una forma bilineare continua;
b(vh , qh )
sup + S(qh , qh ) ≥ βh kqh kL2 (Ω) ∀qh ∈ Qh ; (2.19)
vh ∈Vh k∇v h kL2 (Ω)
vh =0
/
3. S(ph , qh ) → 0 se h → 0;
Osserviamo che la richiesta 2 è una richiesta più debole e quindi meno stringente
rispetto alla richiesta che S sia definita positiva.
Una stabilizzazione che rispetta tutte le quattro ipotesi del teorema ?? è quella che
viene detta interior penalty ed è dovuta a Hansbo-Burman, che scelsero
X Z
S(ph , qh ) = δ h2k J∇ph KJ∇qh K dσ, (2.20)
ei ei
dove ei sono i lati interni e JuK rappresenta il salto di u attraverso un lato e cioè
13
3 Il problema di Navier-Stokes stazionario
Aggiungiamo ora al problema di Stokes il termine convettivo non lineare (u· ∇) u e ot-
teniamo cosi il problema di Navier-Stokes stazionario (non compare ancora il termine
evolutivo) (
−ν∆u + (u· ∇) u + ∇p = f in Ω
(3.1)
divu = 0 in Ω.
con V e Q che rimangono gli stessi spazi discussi per Stokes ossia V = [H 1 (Ω)]d (oppure
1
V0 = [H0,ΓD
(Ω)]d se si risolve rispetto a (u − Rg) e Q = L2 (Ω) (o Q = L20 (Ω) se ΓN = ∅).
Nella (??) compare una nuova forma c(· , · , · ) che è una forma trilineare definita come
Z
c(w, u, v) = (w· ∇) u · v dΩ. (3.3)
Ω
Prima di studiare la stabilità della formulazione debole (e quindi l’esistenza della soluzione
del problema di Navier-Stokes stazionario) soffermiamoci su qualche proprietà fondamen-
tale della forma trilineare c. Per prima cosa usando la disugualianza di Holder a 3 pezzi,
e le immersioni di Sobolev (H 1 (Ω) ,→ L2 (Ω)) possiamo ricavare la continuità , ossia
c(w, u, v) ≤ k∇wkL2 (Ω) kukL4 (Ω) kvkL4 (Ω) ≤ c2s k∇wkL2 (Ω) k∇ukL2 (Ω) k∇vkL2 (Ω) . (3.4)
dove cs è la costante di Sobolev tale per cui k · kL4 (Ω) ≤ cs k∇ · kL2 (Ω) .
Un’altra proprietà importante della forma c è l’emisimmetricità rispetto agli ultimi due
argomenti; in relazione a questa cosa si può inoltre definire un’altra forma trilineare c̃
legata alla c tale che
Z
1
c̃(w, u, v) = c(w, u, v) + divw u· v dΩ. (3.5)
2 Ω
L’emisimmetricità delle due forme appena descritte vale solo in determinate condizioni;
per la precisione vale il seguente lemma
14
Dimostrazione. Sviluppiamo per prima cosa la forma trilineare c e otteniamo che
Z Z X
∂
c(w, u, v) = (w· ∇)u· v dΩ = (wj · )ui · vi dΩ,
Ω Ω ∂xj
i,j
Ci concentriamo sullo studio della stabilità della soluzione della (??) e scegliendo w, v =
u e q = p otteniamo
e cioè
νk∇uk2L2 (Ω) + c(u, u, u) ≤ kF kH−1 (Ω) k∇ukL2 (Ω) , (3.8)
dove kF kH−1 (Ω) è la norma nello spazio duale di [H1 (Ω)]d e F rappresenta il funzionale
associato al dato f .
Nei casi indicati nel lemma ?? il termine corrispondente alla forma trilineare c (o c̃ se
aggiungo il termine correttivo) è nullo grazie alla proprietà di emisimmetria e, applicando
Young, si ottiene cosi la stima di stabilità
1
k∇ukL2 (Ω) ≤ kF kH−1 (Ω) . (3.9)
ν
Tuttavia abbiamo dimostrato la stabilità sfruttando la proprietà di emisimmetria della
forma trilineare che abbiamo visto valere nel caso di dati al bordo Full-Dirichlet omogenei.
Ovviamente se la validità della stima di stabilità fosse limitata a questo caso di condizioni
al bordo, sarebbe una stima con poca validità; notiamo però che la stima (??) si può
ricavare dalla (??) anche nel caso in cui la forma trilineare è semplicemente non negativa.
15
Possiamo usare questo fatto per mostrare la stabilità anche nel caso di bordo di Neumann:
alla (??) in questo caso si aggiunge un termine di bordo tale che
Z Z Z
c(w, u, v) = − divw v· u dΩ − (w· ∇)v· u dΩ + (w· n)(u· v) dσ.
Ω Ω ΓN
da cui Z
1
c(u, u, u) = (u· n)(u· u) dσ. (3.10)
2 ΓN
La stima di stabilità in questo caso diventa
Z
1
νk∇uk2L2 (Ω) + (u· n)(u· u) dσ ≤ kF kH−1 (Ω) k∇ukL2 (Ω) . (3.11)
2 ΓN
Se il termine aggiuntivo dell’integrale sul bordo di Neumann fosse sempre positivo, allora
si riuscirebbe a ottenere di nuovo la (??). Sotto intergrale tuttavia u· u è sempre positivo
(se u =/ 0) e quindi, affinchè l’integrale si sempre positivo, basta chiedere che il flusso del
campo di velocità sia sempre uscente, ossia
u· n ≥ 0 su ΓN . (3.12)
u=(1,0)
u=f ΓN
u=(1,0)
Figura 3.1: Dominio per lo studio del flusso intorno a un cilindro; è un esempio in cui le
condizioni di Neumann sono imposte solo dove il flusso è uscente.
Ancora una volta però abbiamo una stima che è limitante perchè nella realtà spesso è
necessario imporre condizioni di Neumann con flussi entranti nel dominio. Esiste quindi
16
un’altra analisi che è la più generale possibile che parte dalla scrittura delle equazioni di
Navier-Stokes in forma rotazionale ossia:
−ν∆u − u × (∇ × u) + ∇ p + 1 u2 = f
in Ω
2 (3.13)
divu = 0 in Ω,
ed è sempre una forma emisimmetrica che ci permette quindi di ottenere la (??) per ogni
problema con qualsiasi tipo di condizioni al bordo.
Abbiamo quindi mostrato la stabilità per la velocità ; non dimentichiamoci che però la
soluzione è la coppia velocità - pressione. Per la pressione si ottiene facilmente una stima
di stabilità sfruttando la condizione inf-sup tale che ∀q ∈ Q∃β > 0 che soddisfa:
1 b(v, p)
kpkL2 (Ω) ≤ sup inf ,
β p∈Q v∈V kvkH1 (Ω)
Sfruttando la (??) si ottiene infine la stima di stabilità per la pressione. Possiamo dunque
affermare che
c2s
1
kpkL2 (Ω) ≤ 2
2kF kH−1 (Ω) + kF kH−1 (Ω) . (3.15)
β ν
Osservazione 3.1. Ricordiamo che l’analisi è stata svolta sempre sotto le ipotesi di a forma
bilineare continua e coerciva, b bilineare continua e che soddisfa la condizione inf-sup.
Per quanto riguarda l’unicità della soluzione, il problema di Navier-Stokes stazionario
presenta delle problematiche relative al fatto che nella realtà ,già a partire da numeri di
Reynolds bassi, si perde l’unicità della soluzione e si creano più soluzioni stabili. Vedremo
nel dettaglio nel capitolo ?? che verrà in genere richiesta una condizione sui dati che ci
assicuri che
c2s
kF kH−1 (Ω) < 1. (3.16)
ν2
17
3.2 Stabilità e convergenza della soluzione discreta
In analogia con quanto fatto nel paragrafo precedente definiamo la formulazione di Galerkin
del problema di Navier-Stokes stazionario come:
cerco(uh , ph ) ∈ Vh × Qh tale che uh |ΓD = g :
(
a(uh , vh ) + c(uh , uh , vh ) + b(vh , ph ) = (f , vh ) ∀vh ∈ Vh
(3.17)
b(uh , qh ) = 0 ∀qh ∈ Qh ,
Tutte le considerazione fatte per la stabilità della soluzione del problema (??) valgono allo
stesso modo per la coppia (uh , ph ) soluzione discreta del problema di Galerkin appena
formulato, con la accortezza che la condizione inf-sup non viene ereditata ma come sempre
va richiesta la LBB che è l’analogo nei sottospazi discreti utilizzati. Vale quindi che
1
k∇ukL2 (Ω) ≤ kF kH−1 (Ω) . (3.18)
ν
Per la convergenza vale il seguente teorema:
Teorema 3.1. La soluzione del problema (??) converge alla soluzione di (??) se vale
2c2s
kF kH−1 (Ω) < 1 (3.19)
ν2
e valgono le stime
k∇(u − uh )kL2 (Ω) ≤ C1 inf k∇(u − vh )kL2 (Ω) + C2 inf kp − πh kL2 (Ω) . (3.20)
vh ∈Vh πh ∈Qh
kp − ph kL2 (Ω) ≤ C3 inf k∇(u − vh )kL2 (Ω) + C4 inf kp − πh kL2 (Ω) . (3.21)
vh ∈Vh πh ∈Qh
18
da cui aggiungendo e togliendo b(uh − wh , πh ) con πh ∈ Qh si ottiene
Sfruttando ora la continuità di c, la stima di stabilità (??) e le (??), (??) e (??) si ottiene
(3.25)
Passare ora alla stima non dipendente da wh ∈ Vh,div è semplice: basta riusare la disugua-
glianza triangolare con
k∇(u − wh )kL2 (Ω) ≤ k∇(u − vh )kL2 (Ω) + k∇(vh − wh )kL2 (Ω) ∀vh ∈ Vh ,
b(vh − wh , qh )
k∇(u − wh )kL2 (Ω) ≤ k∇(u − vh )kL2 (Ω) + kqh kL2 (Ω) .
βh
b(vh , qh )
k∇(u − wh )kL2 (Ω) ≤ k∇(u − vh )kL2 (Ω) + kqh kL2 (Ω) ,
βh
19
Aggiungendo e togliendo a(u, vh ) si ottiene
I primi due termini sono a posto grazie alle continuità delle rispettive forme bilineari,
mentre per gli ultimi due termini, sommando e sottraendo c(u, uh , v) si ottiene
Come si nota in questo problema la non linearità viene eliminata sostituendo il campo di
velocità u con un nuovo campo di velocità w; definiamo ora Φ la mappa che associa ad
ogni vettore w ∈ V la soluzione u(w) del problema di Oseen, ossia
Φ(w) = u ∀w ∈ V. (3.28)
L’obiettivo è quello di dimostrare che la mappa Φ ammette un unico punto fisso che
soddisferà la relazione Φ(w) = u e sarà pertanto soluzione di Navier-Stokes. Affinchè il
punto fisso sia unico è necessario che Φ sia una contrazione ossia è necessario che esista un
ρ ∈ (0,1) tale che
20
Passiamo alla forma debole scegliendo le funzioni test in modo opportuno e aggiungendo
e togliendo il termine Ω (w1 · ∇) u2 · (u1 − u2 ) dΩ otteniamo
R
Z Z
2 2
νk∇(u1 − u2 )kL2 (Ω) + (w1 · ∇) |u1 − u2 | dΩ + ((w1 − w2 ) · ∇) u2 · (u1 − u2 ) dΩ = 0.
Ω Ω
Il secondo termine si annulla per l’emisimmetricità della forma trilineare c e quindi rimane
νk∇(u1 −u2 )k2L2 (Ω) ≤ |c(w1 −w2 , u2 , u1 −u2 )| ≤ c2s kw1 −w2 kH1 (Ω) ku2 kH1 (Ω) ku1 −u1 kH1 (Ω) ,
c2s
k∇(u1 − u2 )kL2 (Ω) ≤ kF kH−1 (Ω) kw1 − w2 kH1 (Ω) . (3.31)
ν2
La mappa Φ è pertanto una contrazione solo se
c2s
ρ= kF kH−1 (Ω) < 1, (3.32)
ν2
e pertanto il problema di Navier-Stokes stazionario, come già anticipato dalla (??), am-
mette un’unica soluzione solo se vale la (??).
Dal punto di vista numerico questo metodo è facile da implementare in quanto l’idea è
quella di eliminare la non linearità usando al generico passo k + 1 il campo convettivo al
passo precedente uk che è noto. Per ogni istante temporale quindi si risolve il problema
(
a(uk+1 k k+1 k+1
h , vh ) + c(uh , uh , vh ) + b(vh , ph ) = F
k+1 (v )
h ∀vh ∈ Vh
k+1
(3.33)
b(uh , qh ) = 0 ∀qh ∈ Qh .
e la nuova matrice Z
k
N(U ) = [ni,j ] = (uk · ∇)ϕj · ϕi dΩ, (3.34)
Ω
possiamo definire un sistema lineare, la cui matrice varia a ogni iterazione (perchè N
dipende da Uk , tale che
A + N(Uk ) BT Uk+1
F
= (3.35)
B 0 Pk+1 0
21
Dimostrazione. Si ricava facilmente dalla (??) usando w1 = uk e w2 = u, e usando le
proprietà di Φ per cui u1 = uk+1 e u2 = u.
Per ottenere ordini di convergenza quadratici si ricorre spesso all’utilizzo del secondo
modo nominato a inizio paragrafo che è il metodo di Newton. Applicato alle funzioni
scalari è noto che il metodo cerca il punto fisso della funzione f (x) basandosi sulla relazione
ricorsiva
f (xk )
xk+1 = xk − 0 k . (3.37)
f (x )
Quando lo si estende al caso di funzioni vettoriali il termine f 0 (xk ) acquista il significato
dello Jacobiano associato alla funzione vettoriale f (xk ), ossia
∂f1 ∂f1
...
∂x1 ∂xn
. .. ..
..
Jf (xk ) = . . . (3.38)
∂fn ∂fn
...
∂x1 ∂xn
In analogia a quanto scritto nella (??) vogliamo dire che la derivata direzionale dell’ope-
ratore F lungo la direzione (δu, δp) è uguale all’opposto del nostro operatore F stesso.
Osserviamo inoltre che essendo F un operatore vettoriale che non dipende nè da u nè da
p, la sua derivata direzionale sarà nulla e pertanto coincideranno le derivate direzionali di
F e L; la derivata direzionale di L viene in genere indicata con DL(u,p) (δu, δp) e viene
detta operatore tangente. Precisiamo infine che quando parliamo di derivata direzionale di
un operatore si intende la derivata di Gateaux di F applicata al vettore (δu, δp).
22
Svolgendo tutti i calcoli si ottiene che ad ogni passo k ≥ 0, dato il vettore iniziale u0 , si
calcola la coppia (uk+1 , pk+1 ) tale che
(
−ν∆uk+1 + (uk · ∇)uk+1 + (uk+1 · ∇)uk + ∇pk+1 = f + (uk · ∇)uk ∀v ∈ V
k+1
(3.42)
divu =0 ∀q ∈ Q.
Osserviamo che rispetto alla linearizzazione ottenuta col metodo dei punti fissi partendo dal
problema di Oseen, sono presenti due nuovi termini: il primo in cui il campo di trasporto
è l’incognita uk+1 , e il secondo è un termine in cui sia il campo convettivo che il campo
trasportato sono uk e pertanto è una quantità nota. Notiamo tuttavia che in questo caso
il termine noto varia a ogni iterazione in quanto è presente la dipendenza da uk .
Il problema (??) può essere formulato in forma algebrica come
Osservazione 3.3. Anche in questo caso la matrice A+N(Uk )+M(Uk ) non è simmetrica è
quindi per risolvere il sistema non si potrà usare un metodo come il gradiente coniugato
per esempio, ma serviranno metodi meno specifici come il GMRES.
Enunciamo ora un teorema riguardante la velocità di convergenza del metodo di Newton
appena descritto:
Teorema 3.3. Se l’operatore tangente DL(u,p) (δu, δp) è non singolare in un intorno della
soluzione (u, p), e se u0 è sufficientemente vicino a u allora il metodo di Newton converge
quadraticamente e vale la stima
Evidenziamo infine come il guadagno sulla velocità di convergenza del metodo di New-
ton sia compensata in negativo dal fatto che la scelta del dato iniziale deve essere fatta
in modo che questo sia vicino alla soluzione esatta: il bacino di attrazione del punto fisso
trovato col metodo di Newton non è tutto il dominio come invece avviene nel caso si usino
metodi di punto fisso come quelli visti in precedenza.
23
4 Discretizzazione temporale del problema di Navier-Stokes
Abbiamo visto fino ad ora come analizzare e affrontare numericamente le difficoltà intro-
dotte dalla natura del problema di punto-sella e dalla non linearità del termine convettivo;
rimane ora da analizzare come affrontare la discretizzazione temporale. Analizzeremo 3
tipi di approcci per fare ciò:
Prima di affrontare questi argomenti scriviamo però la formulazione debole del problema
di Navier-Stokes e dimostriamo l’esistenza di almeno una soluzione:
RT
cerco u ∈ L2 (0, T ; H1 (Ω)) ∩ L∞ (0, T ; L2 (Ω)) e p tale che 0 p dt ∈ C(0, T, L2 (Ω)) che
soddisfano
Z ∂u
v dΩ + a(u, v) + c(u, u, v) + b(v, p) = (f , v)L2 (Ω) ∀v ∈ H1 (Ω)
Ω ∂t
∀q ∈ L2 (Ω)
b(u, q) = 0
u=g su ΓD (4.1)
∂u
su ΓN
ν − pn = d
∂n
u(x, t = 0) = u0 (x) in Ω
con f (x, t) ∈ L2 (0, T, H−1 (Ω)) , g(x) ∈ H1/2 , d(x) ∈ H−1/2 e u0 (x) ∈ L2 (Ω). La formu-
lazione di Galerkin del problema avrà la stessa forma e sarà ambientata nei soliti spazi Vh
e Qh sottospazi finiti di quelli appena usati per la formulazione debole.
Si dimostra che vale inoltre il seguente teorema:
Teorema 4.1. Sotto le ipotesi di regolarità fatte per i dati, il problema (??) con dati
Full-Dirichlet omogeneo ammette una soluzione che può essere controllata nelle rispettive
norme da:
1 T
Z
2 2 0 2
kukL∞ (0,T ;L2 Ω) + kukL2 (0,T ;H1 (Ω)) ≤ ku kL2 (Ω) + kf (s)k2H−1 (Ω) ds; (4.2)
ν 0
Z T
kuk2L∞ (0,T ;L2 (Ω) + kuk2L2 (0,T ;H1 (Ω)) ≤ ku0 k2L2 (Ω) + kf (s)k2L2 (Ω) ds eT ; (4.3)
0
1 ∂(u2 )
Z
dΩ + νk∇uk2L2 (Ω) = (f , u)L2 (Ω) . (4.4)
Ω 2 ∂t
24
Per ottenere la (??) procediamo con l’applicare la disuguaglianza di Holder e Young (con
1
= 2ν sul termine noto ottenendo
1d 1 ν
kuk2L2 (Ω) + νk∇uk2L2 (Ω) = kf (x, t)k2H−1 (Ω) + k∇uk2L2 (Ω) .
2 dt 2ν 2
Intregrando nel tempo fra 0 e un generico istante T e moltiplicando tutto per 2 si ricava
Z T
1
ku(T )k2L2 (Ω) + νk∇uk2L2 (Ω) = ku0 k2L2 (Ω) + kf (x, s)k2H−1 (Ω) ds,
ν 0
d
kuk2L2 (Ω) + 2νk∇uk2L2 (Ω) = kf (x, t)k2L2 (Ω) + kuk2L2 (Ω) .
dt
Ricavare la (??) è immediato una volta applicato il lemma di Gronwall.
Osserviamo che le due stime appena dimostrate sono in un certo senso duali in quanto
la prima fornisce un controllo della soluzione per qualsiasi istante temporale ma esplode
quando la viscosità tende a 0 (ossia non vale con numeri di Reynolds alti); al contrario la
seconda stima non dipende dalla viscosità ma ha il limite di esplodere per istanti temporali
grandi.
Sottolineamo infine che il teorema ?? è solo un teorema di esistenza della soluzione del
problema di Navier-Stokes: come già accennato in precedenza infatti l’esistenza per il
problema in 3D non è ancora stata dimostrata (mentre in 2D si riesce a ottenere una
dimostrazione dell’unicità della soluzione).
Introduciamo ora l’argomento principale del capitolo che affronta i modi di discretizzare
la derivata temporale: la semidiscretizzazione spaziale di Galerkin è
cerco ∀t ≥ 0 la coppia (uh , ph ) ∈ Vh × Qh : uh |ΓD = g tale che:
Z
∂uh v dΩ + a(u , v ) + c(u , u , v ) + b(v , p ) = (f , v ) 2 ∀vh ∈ Vh
h h h h h h h h h L (Ω)
Ω ∂t
b(uh , qh ) = 0 ∀qh ∈ Qh .
(4.5)
La dimostrazione fatta per l’esistenza della soluzione della formulazione debole si può adat-
tare a questo problema per dimostrarne la stabilità in maniera immediata.
Quando invece si introduce la formulazione algebrica sarà necessario scrivere la funzio-
ne uh (x, t) come somma di funzioni di base vettoriali e coefficienti che in realtà adesso
diventano funzioni del tempo:
N
X
uh (x, t) = uj (t)ϕj (x). (4.6)
j=0
25
Introducendo la matrice di massa M tale che
Z
[M]i,j = ϕj ϕi dΩ
Ω
∂u un+1 − un
= .
∂t ∆t
Come dice il nome del metodo sarebbe lecito aspettarsi che tutte le altre quantità presenti
nell’equazione della quantità di moto compaiono valutate al tempo tn : cosi facendo si
otterrebbe però un problema in cui la pressione al tempo tn+1 non compare da nessuna
parte e quindi è come se non si riuscisse a imporre il vincolo di incomprimibilità per la
funzione un+1 . E’ pertanto necessario che la pressione compaia sempre come moltiplicatore
valutata al tempo tn+1 .
Il sistema semidiscretizzato in tempo associato al metodo di Eulero esplicito è quindi
n+1
u − un
− ν∆un + (un · ∇)un + ∇pn+1 = f n
∆t (4.8)
divun+1 = 0.
Il vantaggio di questa formulazione sta nel fatto che la non linearità è scomparsa in quando
il termine convettivo viene valutato al tempo tn in cui tutte le quantità sono note. Tuttavia
il forte limite di questo metodo è che non è incondizionatamente stabile, ma è necessario
richiedere che valga la condizione CFL e quindi che il passo temporale sia limitato dal
passo di discretizzazione spaziale, ossia
h
∆t < . (4.10)
|un |
26
Il metodo che è completamente opposto a quello di Eulero esplicito è il metodo di
Eulero implicito che come è ben noto discretizza la derivata temporale come
∂u un − un−1
= .
∂t ∆t
La formulazione semidiscreta in tempo presenta quindi tutti i termini valutati al tempo
tn+1 ed è n+1
u − un
− ν∆un+1 + (un+1 · ∇)un+1 + ∇pn+1 = f n+1
∆t (4.11)
divun+1 = 0.
Questa volta il sistema algebrico non si può scrivere in quanto il termine convettivo rimane
scritto in forma non lineare (ed è quindi impossibile ottenere un sistema linaere). Tuttavia,
contrariamente a quanto accade per il metodo esplicito, qui si ottiene una stabilità incon-
dizionata ed è quindi possibile scegliere il passo temporale indipendentemente dal passo
spaziale.
Per unire i vantaggi dei due metodi proposti si utilizza in genere uno schema che
viene detto semi-implicito. L’analisi di stabilità dei metodi mostra come i metodi perdano
l’incondizionata stabilità quando il termine diffusivo è scritto in forma esplicita : per
non avere quindi restrizioni sul passo temporale si sceglie una discretizzazione implicita
dappertutto tranne per il termine non lineare che viene linearizzato sostituendo il campo
convettivo con la velocità al passo temporale precedente ossia un . Si ottiene cosi la seguente
forma semidiscretizzata
n+1
u − un
− ν∆un+1 + (un · ∇)un+1 + ∇pn+1 = f n+1
∆t (4.12)
divun+1 = 0,
Questo metodo quindi è quello che unisce nel miglior modo possibile i vantaggi di eliminare
la non linearità e ottenere un metodo incondizionatamente stabile. Tuttavia dal punto di
vista della convergenza non presenta alcun vantaggio rispetto ai metodi di Eulero esplicito
o totalmente implicito. Usando infatti una discretizzazione del I ordine per la derivata
temporale della velocità è impossibile sperare di ottenere un ordine di convergenza migliore
di quello lineare. Vale infatti il teorema
Teorema 4.2. Per ogni scelta degli spazi polinomiali Pk+1 /Pk , discretizzando la derivata
temporale della velocità con uno qualsiasi degli schemi di Eulero proposti, valgono le stime
27
Per ottenere schemi con ordine di convergenza più elevato si deve ricorrere a discretiz-
zazioni della derivata temporale del secondo ordine: gli esempi più comuni sono gli schemi
di Crank-Nicholson e il BDF2.
La discretizzazione di Crank-Nicholson si basa sulla discretizzazione centrata della derivata
temporale valutata al tempo intermedio tn+1/2 e cioè
∂u un+1 − un
|tn+1/2 = .
∂t ∆t
Se per trattare il termine non lineare si vuole utilizzare una formulazione semi-implicita è
necessario però scegliere discretizzazioni del secondo ordine per non rendere vano lo sforzo
fatto per discretizzare la derivata temporale. La formulazione semidiscretizzata in tempo
diventa quindi
n+1
− un
n
3u − un−1
n+1
+ un
u − ν∆u n+1 + ·∇
u
+ ∇pn+1 = f n+1
∆t 2 2 (4.14)
divun+1 = 0.
Notiamo che affinchè la soluzione posso essere calcolata sono necessari i valori di velocità
in 2 istanti temporali precedenti rispetto al tempo che si vuol calcolare; si dice che lo
scehma di Crank-Nicholson è uno schema a 2 passi. Computazionalmente, per ottenere un
ordine di convergenza O(∆t2 ), si paga nel fatto che è necessario tenere in memoria di un
ulteriore passo temporale rispetto a quelli necessari per ottenere la soluzione degli schemi
del I ordine.
L’altro metodo del secondo ordine che presentiamo è il BDF2 che è un altro schema a
2 passi che si basa sulla discretizzazione temporale
∂u 3un+1 − 2un + un−1
|tn+1 = .
∂t 2∆t
La formulazione con il termine non lineare trattato in semi-implicito diventa
n+1
3u − 2un + un−1
− ν∆un+1 + 2un − un−1 · ∇ un+1 + ∇pn+1 = f n+1
2∆t (4.15)
divun+1 = 0.
Osserviamo che continuano a valere le stesse considerazioni sulla stabilità fatte per le
discretizzazioni di Eulero e cioè che, avendo usato sempre discretizzazioni semi-implicite,
si ottengono metodi incondizionatamente stabili.
P(x,t n+1 )
P(X,t n)
Figura 4.1: Avanzamento lungo la sua traiettoria della particella che al tempo tn+1 è in x
e che al tempo precedente era in X.
Nel nostro caso la posizione x è nota in quanto sarà un nodo della griglia su cui stiamo
lavorando: il problema diventa quello di riuscire a calcolare il punto in cui la particella era
all’istante precedente ossia il punto X. Per calcolare la traiettoria X(t) della particella P si
deve risolvere la ODE
∂X(t)
= u(X, t)
∂t , (4.18)
X(x, s; s) = x
in cui la funzione X(x, s; t) restituisce la posizione al tempo t della particella che all’istante
s si trova in x. Se quindi la variabile t viene imposta uguale a s ovviamente la funzione
restituirà il vettore x stesso.
Nel nostro caso sarà nota la posizione della particella al tempo tn+1 e vorremo ricostruire
la traiettoria andando indietro nel tempo per trovare la posizione al tempo tn ossia, la
figura ?? può essere modificata come segue.
P(x,t n+1 )
Figura 4.2
In questo caso il valore X(x, tn+1 ; tn ) viene dette piede della traiettoria in quanto la par-
ticella che stiamo considerando viene da quel punto all’istante precedente. Risolvendo la
(??) andando indietro di un tempo −∆t si ottiene l’espressione analitica della traiettoria
X(x, tn+1 ; tn ) = x − ∆t · un (x) (4.19)
29
La derivata lagrangiana può essere quindi discretizzata come
Riassumendo possiamo dire che il vantaggio indubbio di questo metodo è il fatto che la
non linearità non entra più nella formulazione: inoltre su FreeFem++ è facile da imple-
mentare grazie al comando convect. Tuttavia risulta un metodo applicabile solo in 2D
in quanto ha il problema che per ogni punto bisogna calcolare il piede della traiettoria al
passo precedente: per calcolare il punto X si attraversano in genere diversi elementi della
tassellazione come da figura ??, e quando si alza la dimensione spaziale diventa troppo
complicato seguire all’indietro la traiettoria e quindi il metodo perde di utilità in quanto
diventa troppo alto l’onere computazionale.
,t n )
(X,t
x,t n+1 )
(x,t
Figura 4.3: Ricostruzione del piede della traiettoria secondo la discretizzazione della
derivata lagrangiana
30
Parte II
E’ implicito nella definizione che se x è un punto che appartiene alla frontiera la sua
funzione distanza restituirà il valore 0, ossia d(x) = 0 ∀x ∈ Γ.
Osserviamo che nel momento in cui al punto x̄ ∈ Ω viene associato il punto xf ront come
l’unico punto sulla frontiera Γ che minimizza la d(x̄), allora vorrà dire che unendo questi
due punti si crea un segmento all’interno del dominio Ω: su questo segmento non può
trovarsi nessun altro punto della frontiera perchè, se così non fosse, xf ront non sarebbe il
punto più vicino a x̄. Questo segmento sarà inoltre il cammino più corto che unisce x̄ e
xf ront , e qualsiasi deviazione da esso aumenterà la distanza di x̄ dalla frontiera: vuol dire
che questo segmento è la direzione di massima discesa della funzione distanza e quindi ∇d
sarà diretto nella stessa direzione di questo segmento. Inoltre avremo che
|∇d| = 1, (5.2)
poichè se per esempio considero un altro punto x due volte più vicino alla frontiera rispetto
a x̄, allora d(x) sarà la metà di d(x̄) in quanto è una distanza euclidea.
Ribadiamo tuttavia che questa proprietà sul gradiente è valida solo quando un punto x̄ ha
un unico punto che ne minimizza la distanza dalla frontiera (non varrebbe per esempio se
la frontiera fosse una circonferenza e x̄ il suo centro).
Passiamo ora a definire le funzioni misura con segno:
Definizione 0.1. Si dice funzione misura con segno una funzione implicita φ tale che
32
frontiera, e Γ la frontiera stessa . Notiamo che avremo
φ(x) = −d(x) < 0
∀x ∈ Ω− ;
φ(x) = d(x) = 0 ∀x ∈ Γ;
φ(x) = d(x) > 0 ∀x ∈ Ω+ .
Il vantaggio che si ottiene definendo le funzioni distanza con segno è che si creano in
questo modo funzioni differenziabili lungo la frontiera a differenza di quanto non lo fossero
le semplici funzioni distanza che presentano un punto angoloso in corrispondenza della
frontiera. Inoltre le funzioni distanza con segno continuano a ereditare tutte le proprietà
delle funzioni distanza normali e in particolare la (??) diventa
|∇φ| = 1. (5.3)
Vettorialmente inoltre si può esprimere qualsiasi punto della frontiera xf ront attraverso le
funzioni distanza con segno nel seguente modo
x front
x N
Riportiamo infine una importante proprietà delle funzioni distanza con segno che lega
la (??) al versore normale e alla curvatura κ della frontiera:
∇φ
N= = ∇φ se vale la(??). (5.5)
|∇φ|
∇φ
κ = ∇· , (5.6)
|∇φ|
Vale quindi la seguente formula che ci permettera di semplificare moltissimo la trattazione
ogni volta che entrerà in gioco la curvatura della frontiera:
33
6 Moto della frontiera
Passiamo ora ad affrontare il problema di quali possono essere le cause che fanno muovere
una frontiera e di come discretizzare e trattare i diversi tipi di movimento.
In generale la frontiera si può muovere per 3 motivi:
34
procedimento del tipo front capturing method e ha il grosso vantaggio di non aver
bisogno di ridefinire i punti da seguire dopo un certo numero di passi, in quanto riesce
a catturare bene qualsiasi cambiamento nella topologia della frontiera come l’unione o la
divisione di suoi pezzi. L’equazione che sta alla base di questo approccio è quella che viene
anche chiamata equazione del level set ed assume la seguente forma:
φt + V· ∇φ = 0. (6.2)
Abbiamo detto che il campo di velocità V è definito solo sui punti della frontiera φ(x) = 0:
la difficoltà che nasce quando si passa al mondo discreto sta nel fatto che sarà raro se non
impossibile che un nodo della mesh sia esattamente nel punto in cui si trova l’insieme di
livello. L’idea che quindi si sfrutta è quella di estendere la definizione del campo di velocità
a una fascia intorno alla frontiera. Nella realtà questo non è cosi complicato da fare in
quanto in genere V sarà un campo definito su tutto il dominio e non sarà quindi difficile
ottenere i valori di velocità vicino alla frontiera.
Per poter inoltre ottenere una buona approssimazione del movimento della nostra superfi-
cie di livello è necessario essere in grado di cogliere con sufficiente precisione le variazioni di
velocità che ci sono fra punti adiacenti sulla frontiera. Precisamente se supponiamo che il
campo di velocità abbia forti variazioni muovendosi nella direzione tangente alla frontiera
stessa (due punti vicini hanno velocità molto diverse fra loro), sarà allora necessario avere
una griglia fitta in quella zona.
Viceversa la variazione del campo di velocità nella direzione normale alla superficie è as-
solutamente irrilevante al fine dello studio del moto della frontiera in quanto spostandosi
lungo la normale si va a cogliere un punto esterno alla frontiera e che quindi non ci in-
teressa. Alla luce di ciò spesso si semplifica il campo di velocità mantenendo costante
la componente normale della velocità per tutti i punti nella banda intorno alla frontiera
(ovviamente il valore della costante che si sceglie è quello del punto più vicino alla frontie-
ra). La scelta di prendere il valore del punto più vicino alla frontiera come valore per la
componente normale della velocità del campo convettivo, oltre che ad essere forse la più
semplice, si dimostra essere anche molto efficace in quanto conserva le caratteristiche di
una funzione distanza con segno.
Infatti in generale, avanzando in tempo, si perdono le proprietà caratteristiche della di-
stanza con segno: se per esempio φ all’istante t è una distanza con segno non è sempre
verificato che all’istante successivo sia ancora la funzione che indica la distanza dei punti
del dominio dalla nostra frontiera Γ. Con la scelta precedente questa difficoltà si supera,
ma vedremo in seguito che in alcuni casi sarà necessario reinizializzare la funzione φ per
ovviare al problema appena evidenziato.
35
• nel caso b > 0 l’interfaccia si muove nel verso della concavità (un cerchio per esempio
si rimpicciolisce);
• nel caso b < 0 invece l’interfaccia si muove nel verso della convessità (il cerchio si
espande).
(a) (b)
Osserviamo che il caso b < 0 è un caso che non possiamo accettare dal punto di vista
numerico poichè vorrebbe dire che una piccola perturbazione viene amplificata e quindi
le approssimazioni dei dati genererebbero errori non irrilevanti e quindi il problema non
sarebbe ben posto mancando la stabilità.
Come abbiamo ipotizzato scrivendo la (??), la velocità non ha altre componenti se non
quella nella direzione normale alla frontiera; tuttavia anche se si ipotizzasse un campo di
velocità con anche una componente nella direzione tangenziale del tipo V = Vn N + Vt T
questo non produrrebbe risultati differenti in quanto nell’equazione del moto del level set
si ha
φt + (Vn N + Vt T)· ∇φ = 0. (6.4)
Dato che ∇φ è nella diretto come la normale, il prodotto scalare renderebbe nullo il con-
tributo dato dalla componente tangenziale del campo di velocità legato alla curvatura.
L’equazione del moto diventa quindi
φt + Vn N· ∇φ = 0, (6.5)
φt + Vn |∇φ| = 0 (6.7)
36
con Vn componente normale della velocità tale che Vn = −bκ.
Osserviamo che mentre la (??) è una forma dell’equazione del moto del level set che può
essere usata anche per campi di velocità esterni come abbiamo visto nel paragrafo prece-
dente, invece la (??) è usata solo per campi di velocità auto-generati, dipendenti cioè dalle
caratteristiche stesse della frontiera.
Osserviamo ora come si semplifica la (??) nel caso in cui φ è una funzione distanza con
segno. Iniziamo a osservare che la (??) può essere riscritta esplicitando Vn come
φt = bκ|∇φ|; (6.8)
ricordiamo inoltre la proprietà che vale in generale per le funzioni distanza con segno,
ossia che |∇φ| = 1 per tutti quei punti del dominio per i quali esiste un unico punto
sulla frontiera che minimizza la loro distanza da Γ. Nel caso in cui valga questa proprietà
il termine a secondo membro si semplificherebbe ulteriormente. Sfruttiamo ora un’altra
proprietà delle funzioni distanza con segno che è quella che lega la curvatura alla funzione
implicita tramite la relazione κ = ∆φ. Otteniamo quindi
φt = b∆φ, (6.9)
che non è più un’equazione in cui compare un termine di trasporto, ma solo un laplaciano
e sappiamo bene come i fenomeni puramente diffusivi siano più facili da modellare rispetto
a quelli convettivi.
37
Se supponiamo per esempio di avere la costante a positiva avremo che l’insieme di livello
φ = a∆t al tempo tn diventerà al tempo tn+1 l’insieme di livello φ = 0. Gli insiemi di
livello ad ogni passo temporale quindi si muovono nella direzione normale di una quantità
a∆t. Osserviamo che l’incremento della funzione implicita è quindi costante e questo fatto
si traduce nell’avere φ con gradiente costante; matematicamente questo è evidente nel
momento in cui si va a differenziare la (??) e si ottiene
Osservando però che a e ∆t sono costanti, allora ∇ (a∆t) si annulla e rimane soltanto
l’uguaglianza
∇φn+1 = ∇φn . (6.14)
Ancora una volta l’utilità di questa considerazione si vede nel momento in cui la funzione
implicita φ è una funzione distanza con segno: in questo caso il suo gradiente sarà unitario
al momento dell’inizializzazione e si manterrà tale ad ogni passo temporale garantendo cioè
che la φ rimanga una funzione distanza con segno.
38
7 Formulazione debole e discretizzazione FE
Fino ad ora abbiamo discusso delle idee che stanno alla base del metodo del level set ossia
le funzioni distanza con segno, e i tipi di motori che possono far spostare la frontiera.
Adesso ci occupiamo di formulare matematicamente il problema del level set nell’ambito
degli elementi finiti.
Come abbiamo già avuto modo di vedere, l’equazione che regola il movimento della frontiera
Γ sotto l’effetto del campo convettivo u è un’equazione di puro trasporto che si può scrivere
nella forma
φt + u· ∇φ = 0. (7.1)
Procedendo formalmente, moltiplichiamo l’equazione per una funzione test e integriamo
sul dominio Ω: si ottiene cosi la seguente equazione
Z Z
φt w dΩ + (u· ∇φ)w dΩ = 0. (7.2)
Ω Ω
Le regolarità richieste per far si che la (??) sia ben definita sono che:
• φ ∈ Wu (Ω) := {ψ ∈ L2 (Ω) : u· ∇ψ ∈ L2 (Ω)};
• w ∈ L2 (Ω).
Osserviamo che lo spazio Wu (Ω) è uno spazio di Hilbert se dotato dalla norma
1/2
kψk1,u = kψk20 + ku· ∇ψk20 .
39
8 Stabilizzazione dell’equazione del level set
Come abbiamo già avuto modo di sottolineare, l’equazione del level set è un’equazione
di puro trasporto e la sua discretizzazione alla Galerkin soffre perciò di tutti i problemi
caratteristici delle equazioni a trasporto dominante.
Possibile rimedi per fronteggiare questo problema possono essere quello di utilizzare degli
spazi di Galerkin discontinui, oppure mantenere elementi finiti continui aggiungendo tutta-
via dei termini di stabilizzazione. Noi cercheremo di analizzare questa seconda possibilità
in quanto è naturale voler cercare di approssimare una funzione distanza (che è continua)
con elementi finiti continui.
Inoltre, siccome la discretizzazione temporale non comporta nessun ulteriore problema dal
punto di vista della stabilizzazione, ci proponiamo ora l’obiettivo di fare un’analisi su un
caso generico di equazione di trasporto-reazione stazionaria. Il problema che vogliamo
quindi stabilizzare è il seguente:
cerco φ ∈ Wu tale che
Z Z Z
σφ w dΩ + (u· ∇φ)w dΩ = f w dΩ ∀w ∈ L2 (Ω). (8.1)
Ω Ω Ω
1 φk
Osserviamo che se poniamo σ = e f = e ambientiamo il problema nei relativi
∆t ∆t
sottospazi discreti, allora la soluzione della (??) è il valore della funzione distanza al tempo
k+1 che si ottiene discretizzando l’equazione del level set tramite Eulero implicito.
Per comodità di scrittura scriveremo da qui in poi
Z Z
a(φ, w) = σφ w dΩ + (u· ∇φ)w dΩ.
Ω Ω
Presentiamo ora 2 tipologie di stabilizzazione che si differenziano fra di loro in quanto
la stabilizzazione Subgrid viscosity aggiunge termini viscosi all’interno di alcuni triangoli
della tassellazione, mentre la stabilizzazione Subgrid Edge inserisce correzioni solo sui lati
di alcuni elementi.
40
Osservazione 1. L’aggiunta della regolarità H 1 (Ω) nasce dalla necessità di avere funzioni
continue su tutto il dominio.
E’ possibile inoltre definire un sottospazio XhH ⊂ Xh tale che per ogni funzione
h ∈ Xh esistono almeno due funzioni φh ∈ Xh e φH ∈ XH tali che φh = φh − φH .
φH H H
φh φH φ Hh
a(φh , wh ) + b(φH H
h , wh ) = (f, wh ) ∀wh ∈ Xh , (8.4)
Per garantire l’esistenza e l’unicità della soluzione della (??) è necessario che siano soddi-
sfatte diverse condizioni riguardanti sia la scelta degli spazi in cui ambientare le funzioni,
che il termine correttivo b. Per quanto riguarda quest’ultimo è necessario che soddisfi la
seguente proprietà :
Proprietà 8.1. Esiste una norma k · kbh tale che
∃c1 , c2 > 0 : ∀whH ∈ XhH vale c1 kwhH k1,u ≤ kwhH kbh ≤ c2 h−1 kwhH kL2 (Ω) , (8.5)
e inoltre la forma bilineare bh : XhH × XhH → R è coerciva e continua, cioè ∃c3 , c4 > 0 tali
che
bh (φH H h 2
h , φh ) ≥ c3 hkφh kbh , (8.6)
bh (φH H h h
h , wh ) ≤ c4 hkφh kbh kwh kbh . (8.7)
Nel nostro caso la scelta della coppia di spazi (XH , Xh ), detta configurazione P1 a due
livelli, garantisce tutte le condizioni riguardanti gli spazi che sono necessarie per avere la
buona positura del problema.
Per quanto riguarda il termine correttivo invece una sua possibile forma è la seguente
b(φH H H H
h , wh ) = h(∇φh , ∇wh ). (8.8)
41
Osserviamo che quella appena proposta è una stabilizzazione che introduce viscosità arti-
ficiale all’interno di ognuno degli elementi Kh e in tutte le direzioni; vedremo in seguito
che un’altro tipo di stabilizzazione accettabile è la stabilizzazione SU.
Se sono soddisfatte le condizioni necessarie per l’esistenza e unicità della soluzione, è
inoltre possibile ricavare una stima di convergenza per la funzione φh che dipende dal grado
polinomiale k usato per la discretizzazione FE (valida solo per k=1,2). Se φ ∈ H k+1 (Ω)
allora la soluzione discreta φh soddisfa:
Il termine correttivo che andiamo a introdurre in questo metodo, è una penalizzazione sul
salto del gradiente delle funzioni sui lati Ei e chiameremo questo termine
X X Z
jh (φh , wh ) = h2ei J∇φh KJ∇wh K dσ, (8.11)
Kh ei ∈Ei ei
Osservazione 8.1. Questo tipo di correzione è molto simile alla correzione di Hanso-Burman
(??) per i modi spuri di pressione, con una correzione però aggiunta tuttavia localizzata
sui lati Ei e non su tutti i bordi degli elementi della mesh.
Se vogliamo ora ricondurci a una scrittura del problema stabilizzato simile alla (??)
vorremmo avere un termine di penalizzazione dipendente dalle funzioni φH h e wh ∈ Xh
H H
invece che dalle funzioni in Xh ; tuttavia osserviamo che nel caso in cui la scelta degli spazi
(XH , Xh ) sia quella di una coppia di P1 , allora le funzioni φh e wh saranno lineari in ogni
elemento KH e quindi il loro gradiente a cavallo dei lati Ei è costante (e il salto è perciò
nullo). Pertanto
J∇φh K = J∇φH + ∇φH H
h K = J∇φh K,
42
e quindi
jh (φh , wh ) = jh (φH H
h , wh ).
Affinchè la formulazione che si ottiene con questa scelta ammetta una e una sola soluzione
è necessario chiedere che j(· , · ) soddisfi la proprietà ??. Questa richiesta viene soddisfatta
in quanto vale il seguente lemma:
Lemma 8.1. La norma k· kjh soddisfa la proprietà ??, e la forma bilineare j(· , · ) è
continua e coerciva.
ammette una e una sola soluzione che soddisfa le disuguaglianze (??) e (??) con k=1.
Nel caso in cui invece volessimo introdurre una stabilizzazione Subgrid Edge con una
coppia di spazi P2 a due livelli, è necessario introdurre una correzione anche sul salto delle
derivate seconde delle funzioni sui lati dei sottotriangoli interni Ei .
La forma bilineare che descrive questa correzione è la seguente:
X X Z
jh (φh , wh ) = h2ei J∇φh KJ∇wh K + h3ei JD2 φh KJD2 wh K dσ, (8.14)
Kh ei ∈Ei ei
dove D2 rappresenta l’operatore Hessiano. Come fatto nel caso precedente di stabiliz-
zazione per spazi P1 a due livelli si riesce a dimosrtrare che la forma bilineare jj (· , · )
soddisfa la proprietà ?? e pertanto siamo di fronte a un problema ben posto, le cui stime
di convergenza sono date dalle disuguaglianze (??) e (??) con k=2.
Osservazione 8.2. L’approccio usato per dimostrare la validità delle stabilizzazioni Subgrid
Edge è un approccio che richiama le properietà di buona positura della stabilizzazione
Subgrid Viscosity che appartiene a quella classe di metodi che introducono una viscosità
artificiale, e che storicamente sono più sviluppati di quanto non lo siano i metodi interior
penalty.
43
• σ=1;
• β = (1,0)T ;
1 x − 0.5 2 x − 0.5
• f= 1 − tanh − 10 1 − tanh .
2 0.005 0.005
L’analisi di convergenza che abbiamo svolto è stata fatta usando come ambiente fun-
zionale lo spazio discreto P1 , su un dominio quadrato Ω = [0,1]2 con griglie caratterizzate
da una discretizzazione spaziale uniforme. I risultati ottenuti stabilizzando il problema con
i metodi SU e IP sono rappresentati nella tabella ??.
IP SU
dh L2 H1 L∞ L2 H1 L∞
0.05 7.56e-3 5.51e-1 6.38e-2 8.96e-3 5.12e-1 5.55e-2
(2.05) (1.01) (1.85) (2.1) (1.2) (1.8)
0.025 1.83e-3 2.59e-1 1.74e-2 2.09e-3 2.2e-1 1.56e–2
(1.95) (0.9) (2.05) (2.05) (0.9) (1.95)
0.0125 4-81e-4 1.41e-1 4.22e-3 5.11e-4 1.11e-1 3.96e-3
(2) (2) (2) (2.03) (1.1) (2)
0.00625 1.2e-4 7.27e-4 1.07e-3 1.25e-4 5.21e-2 9.87 e-4
44
I risultati ottenuti mostrano che per entrambi i metodi di stabilizzazione si ha una con-
vergenza quadratica in norma L2 e L∞ , mentre è giustamente solo lineare in norma H 1 .
Tuttavia osservando la stima (??) notiamo che la convergenza teorica in L2 è minore di
quella trovata numericamente in quanto l’errore teorico è un O(h3/2 ): in letteratura è
stato infatti evidenziato che solo in particolari casi (ottenuti attraverso l’utilizzo di gri-
glie particolari) l’ordine di convergenza quadratico degenera a quello stimato teoricamente
scendendo a 3/2.
45
9 Conservazione della Massa
Il più grande problema che si incontra ogni volta che si ha a che fare con metodi di stabi-
lizzazione sta nel fatto che questi tendono in genere a introdurre una viscosità artificiale
che quindi dissipa massa. In questo paragrafo ci poniamo l’obiettivo di analizzare tramite
FreeFem++ come i metodi di stabilizzazione sopra presentati si comportano. Dobbiamo
subito precisare che utilizzeremo stabilizzazioni in cui i termini correttivi saranno aggiunti
su tutti gli elementi della triangolazione Th in quanto in FreeFem++ non è possibile distin-
guere l’unico elemento della sottogriglia interno all’elemento KH della mesh TH . Pertanto
non useremo una struttura di spazi a due livelli, e i risultati che otterremo saranno so-
pradiffusivi rispetto ai risultati teorici che si otterrebbero limitando la viscosità al solo
sottoelemento interno.
KH
Kh
interno
Kh
Kh Kh
Figura 9.1: La nostra stabilizzazione sarà estesa a tutti i Kh e non solo a quello interno
Le correzioni che useremo per stabilizzare l’equazione del level set saranno le seguenti:
I coefficienti δIP e δSU sono coefficienti che valgono rispettivamente δIP = δ̃IP h2K e
δSU = δ̃SU |u|hk
, con δ̃IP e δ̃SU parametri reali di tuning.
Passiamo ora a analizzare alcuni casi test per vedere come si comportano le stabiliz-
zazioni che abbiamo appena descritto, e come conservano la massa in relazione anche al
tipo di discretizzazione temporale che usiamo. Confronteremo quindi i due metodi SU e
46
IP applicati alle discretizzazioni temporali secondo gli schemi Eulero Implicito (1 ordine),
BDF2 (2 ordine) e discretizzando la derivata lagrangiana tramite il comando convect di
FreeFem++.
47
9.1 Test 1: Traslazione Rigida di un Cerchio
Il primo caso test è la semplice traslazione orizzontale di una funzione il cui insieme di
livello nullo è un cerchio. Sia quindi Ω il nostro dominio [0,1]2 e β il campo di velocità
(1,0)T ; la funzione del level set φ è soluzione dell’equazione
φt + β· ∇φ = 0. (9.3)
La funzione φ è inizializzata come distanza dal cerchio di raggio R=0.15 e di centro (0.3,0.5).
(a) (b)
(a) (b)
48
(a) (b)
(a) (b)
Figura 9.5: Discretizzazione temporale tramite comando convect con IP (a) e SU (b)
49
Inoltre notiamo come la discretizzazione EI, a parità di stabilizzazione, dissipi in maniera
molto più evidente; a parità di discretizzazione temporale invece è la stabilizzazione di tipo
Subgrid Viscosity a dissipare di più.
50
9.2 Test 2: Rotazione di un Quadrato
Come secondo caso di studio analizziamo il caso di una rotazione di un quadrato nel dominio
Ω = [0, 0.7] × [0.3, 1] ma soggetto questa volta a un campo convettivo β = (y − 0.5,0.5 − x)
cioè a un campo che ne provoca la rotazione intorno al punto (0.5,0.5). Mantenendo lo
stesso passo temporale e lo stesso passo spaziale precedente andiamo anche qui a studiare
come si comportano i nostri metodi.
(a) (b)
Figura 9.7: Funzione distanza φ dal quadrato iniziale evidenziato in rosso in (b)
Gli aspetti nuovi che si introducono in questo caso di studio sono gli spigoli del quadrato
e una simulazione per tempi più lunghi che ci aspettiamo quindi che metta maggiormente
in evidenza quali metodi sono più dissipativi.
(a) (b)
Dalle figure ?? ,?? e ?? notiamo ancora che i metodi migliori sono il Subgrid Edge
associato a discretizzazione temporali BDF2 o tramite convect. Dal grafico ?? notiamo
51
(a) (b)
(a) (b)
Figura 9.10: Discretizzazione temporale tramite comando convect con IP (a) e SU (b)
che il BDF2 riesce a preservare ottimamente la massa (come avevamo visto anche nel primo
caso test); tuttavia confrontando le figure ??.(a) e ??.(a) si riesce anche a notare come la
discretizzazione della derivata lagrangiana preservi meglio la forma del quadrato. Quindi
grazie a questa analisi riusciamo a dire che la discretizzazione BDF2 preserva la massa
ma la distribuisce in maniera diversa rispetto a quella reale; al contrario sembra che il
metodo di discretizzazione della derivata lagrangiana preservi sia la massa che la forma
della frontiera.
52
Figura 9.11: Andamento della massa per il caso test 2
(a) (b)
Anche qui manteniamo il dominio [0,1]2 e un campo convettivo β che fa ruotare il nostro
cerchio: i risultati che presenteremo saranno quelli che si ottengono dopo una rotazione
completa del disco utilizzando un passo temporale tale da compiere una rotazione completa
in 1000 passi (circa 0.005). In questo caso presentiamo solamente i risultati che si ottengono
53
con le discretizzazioni temporali della derivata lagrangiana e BDF2 associati alle solite
stabilizzazioni.
(a) (b)
Come abbiamo già visto in precedenza i risultati del metodo Subgrid Edge associato
alla derivata lagrangiana o allo schema BDF2 sono simili: per vedere meglio dove stanno
le differenze facciamo uno zoom concentrandoci sull’ultimo istante temporale che si va a
sovrapporre con quello iniziale.
Osservando la figura ?? è evidente come anche in questo caso il metodo di stabilizzazione
Subgrid Viscosity non sia adeguato in quanto liscia molto la concavità del disco alterando
notevolmente la forma che si ottiene. Ancora una volta possiamo quindi dire che il metodo
di Interior Penalty che stabilizza solo sui lati dei triangoli è decisamente più efficiente; la
discretizzazione temporale migliore con cui accoppiare questa stabilizzazione invece non è
facile da decidere in quanto sia il BDF2 che la derivata lagrangiana danno ottimi risultati.
In questo caso si nota come il BDF2 sia leggermente preferibile al convect nella parte
superiore della rientranza in quanto riesce a rimanere più vicino a quello che è il disegno
iniziale; tuttavia, come già visto nel caso test 2, liscia un po’ troppo gli angoli in basso.
Sono comunque entrambi soluzioni valide per la discretizzazione temporale da accoppiare a
una stabilizzazione Interior Penalty che riteniamo dunque valida per svolgere le simulazioni
successive.
54
(a) (b)
(c) (d)
Figura 9.14: Insieme di livello finale sovrapposto al cerchio di Zalesak iniziale: IP+convect
(a) IP+BDF2 (b) SU+convect (c) SU+BDF2 (d)
10 Reinizializzazione
Abbiamo già evidenziato in precedenza parlando dei moti della frontiera come possa ca-
pitare che durante l’evoluzione temporale la funzione φ perda le sue proprietà di distanza
con segno dal suo insieme di livello nullo. Questo vuol dire che durante la simulazione la
funzione φ presenta regioni in cui può essere troppo ’piatta’ oppure troppo ’ripida’. Nel
primo caso in cui il gradiente è piccolo in prossimità della frontiera si perde accuratezza
nell’individuazione della corretta posizione della stessa, mentre se si ha un gradiente trop-
po elevato si rischia di avere una funzione φ che è quasi discontinua (necessita quindi di
schemi numerici appropriati per gestire il trasporto di una funzione discontinua).
Nasce quindi l’idea di reinizializzare la funzione φ in modo per creare una nuova funzione
che abbia lo stesso insieme di livello zero di φ e che sia la nuova funzione distanza con
segno dall’interfaccia. L’idea della reinizializzazione è visualizzata nella figura ?? in cui
in un istante generico abbiamo una funzione φ(t): il procedimento vuole sostituire questa
funzione con una nuova φreinizializzata che è caratterizzata dal fatto che ha lo stesso insieme
di livello zero Γ = {x ∈ Ω : φ(x, t) = 0} della φ(t) ed è quanto più simile possibile alla vera
distanza da Γ. Osserviamo che se la frontiera è sufficientemente liscia allora la distanza φ
sarà tale da avere |∇φ| = 1.
55
φ iniziale
t φreinizializzata
φ(t)
Figura 10.1: Procedimento di reinizializzazione in 1D
In questo modo si costruisce φ nei nodi di calcolo; è necessario poi ovviamente interpolare
(linearmente se usiamo i P1) per ottenere la distanza in tutto il dominio.
Questo metodo possiamo dire che è l’algoritmo di reinizializzazione più naturale e intuitivo
da ricavare e questa semplicità si traduce in facilità di implementazione. Un ulteriore
vantaggio di questo metodo sta nel fatto che ad ogni passo temporale si ottiene una φ che
è esattamente la distanza dalla frontiera.
Lo svantaggio che porta con sè è tuttavia una pesantezza computazionale in quanto è
un metodo che necessita di trovare per ogni punto della griglia di calcolo quale sia il
corrispondente punto sulla frontiera che ne minimizza la distanza. Questo vuol dire che si
richiede di calcolare per ogni punto del dominio la distanza da tutti i punti della frontiera
e poi assegnare il valore di φ scegliendo il valore minore. Man mano che si aumentano
le dimensioni della simulazione si osserva che questo procedimento risulta essere molto
lungo: se infatti in 1D la frontiera di un insieme connesso è caratterizzata da 2 soli punti,
già passando in 2D la frontiera è formata da infiniti punti nel continuo e da un numero
rilevante nel discreto. Questo ovviamente si traduce nella crescita del numero di controlli
che si devono fare per ogni punto della griglia per trovare la sua minima distanza da Γ.
56
10.2 Metodi differenziali per la reinizializzazione
L’altra categoria di metodi classici per reinizializzare la distanza del level set è quella che
si basa sulla risoluzione di un’equazione differenziale di Hamilton-Jacobi:
∂φ = sign(φ ) (1 − |∇φ|) τ ≥0
0
∂τ (10.2)
φ(x, τ = 0) = φ in Ω.
0
Precisiamo che in questa equazione il tempo τ è una variabile che indica un tempo fittizio
che non ha nulla a che fare con l’avanzamento temporale della simulazione numerica (in
genere si sceglie ∆τ dello stesso ordine di grandezza del passo spaziale della griglia). Inoltre
con φ0 è indicata la funzione che si ottiene dalla risoluzione dell’equazione del level set, e
con sign invece si intende il segno della funzione φ0 . Quello che fa questo metodo è creare
una nuova funzione che ha lo stesso insieme di livello zero di φ0 ma con isolinee più regolari,
e questa funzione si ottiene dunque come soluzione stazionaria della (??).
E’ possibile modificare la (??) in modo da ottenere un’equazione scritta nella stessa
forma dell’equazione del level set. Si può infatti scrivere
∇φ
|∇φ| = · ∇φ
|∇φ|
e ottenere così
∂φ + w· ∇φ = sign(φ ) τ ≥0
0
∂τ (10.3)
φ(x, τ = 0) = φ in Ω.
0
∇φ
w = sign(φ0 )· (10.4)
|∇φ|
Osserviamo che tuttavia il campo di velocità w dipende dalla soluzione stessa: nella ri-
soluzione numerica adotteremo pertanto uno schema semi-implicito in cui l’equazione che
risolveremo sarà
n+1
∇φn
∂φ + sign(φ0 )· · ∇φn+1 = sign(φ0 ) τ ≥0
∂τ |∇φn | (10.5)
n+1
φ (x, τ = 0) = φ0 in Ω.
Come abbiamo già accennato questa equazione si presenta nella stessa forma della (??)
e soffrirà quindi degli stessi problemi di stabilità e conservazione della massa. Tuttavia
oltre a questi problemi è richiesta anche un’approssimazione della funzione sign che per
noi sarà
φ0
sign(φ0 ) = p 2 (10.6)
φ0 + 2
in cui è circa uguale alla dimensione del passo spaziale della griglia.
57
Il procedimento teorico appena proposto consente pertanto di regolarizzare la distanza
con segno durante l’evoluzione temporale dell’interfaccia Γ. Tuttavia nella risoluzione
numerica della (??) è inevitabile lo spostamento dell’insieme di livello zero della φ: lo
spostamento sarà sempre più marcato all’aumentare del numero di passi pseudo-temporali
che vengono risolti in ogni procedimento di reinizializzazione. E’ dunque consigliabile
limitare il più possibile la frequenza del procedimento appena presentato e limitare il
numero di iterazioni richieste in ogni passo di reinizializzazione.
Le differenze fra il procedimento teorico e quello numerico che si realizza nella pratica sono
riassunte nella seguente tabella:
I concetti di "bello" e "brutto" espressi nella tabella ?? sono ovviamente concetti che
si valutano per ogni caso di studio. Se per un problema infatti può essere necessaria la
reinizializzazione ogni 5 passi temporali non è detto che valga la stessa cosa per tutti i
problemi in quanto ci sono casi in cui la φ viene distorta maggiormente richiedendo così
reinizializzazioni più frequenti. Abbiamo già detto nella trattazione dei moti della frontiera
che la reinizializzazione si rende di fatto necessaria soltanto per quei moti che dipendono
dalla curvatura di Γ: se pertanto avremo a che fare con un problema in cui la velocità
di spostamento è unicamente generata dalla curvatura saranno necessarie reinizializzazioni
più frequenti rispetto a un problema in cui una superficie viene solo trasportata all’interno
di un campo di velocità esterno. Inoltre vedremo nel prossimo paragrafo come anche il
numero di passi pseudo-temporali da risolvere in ogni iterazione è molto dipendente dal
tipo di problema che stiamo affrontando.
Il concetto di φ "bella" sta quindi a indicare una funzione distanza con isolinee regolari
che si avvicinano il più possibile a quelle della vera distanza dall’interfaccia.
58
10.3 Esempi di Reinizializzazione
Presentiamo ora due esempi in cui applichiamo la reinizializzazione seguendo lo schema
differenziale proposto nel paragrafo precedente.
Il primo caso che analizziamo è il caso estremo di una funzione che assume esclusivamente
valori 1 e -1 rispettivamente all’esterno e all’interno di un cerchio di raggio R=0.25 centrato
in (0.5,0.5): ( p
1 se (x − 0.5)2 + (y − 0.5)2 ≥ R
φ= p (10.7)
−1 se (x − 0.5)2 + (y − 0.5)2 < R
(a) (b)
Figura 10.2: Visione 2D (con in nero l’insieme di livello zero) e 3D della funzione iniziale
59
(a) (b)
(c) (d)
Figura 10.3: Funzione dopo 250 (a), 500 (b), 750 (c) e 1000 (d) passi pseudo-temporali
Figura 10.4: Sovrapposizione dell’insieme di livello iniziale (rosso) e finale della funzione
distanza
60
Il secondo esempio che presentiamo è tratto da un’applicazione reale in cui si ha a
che fare con l’interazione fra due fluidi di densità diversa. Il caso classico che studiamo è
conosciuto col nome di Rising Bubble e descrive lo spostamento e la deformazione di una
bolla circolare di fluido leggero immersa nel fluido pesante. La deformazione e lo sposta-
mento sono causate principalmente dalla tensione superficiale della bolla e dalla gravità
che tende a far sollevare il fluido leggero secondo il principio di Archimede. Le equazioni
che regolano il fenomeno saranno meglio descritte nella prossima sezione, e per il momento
ci concentriamo solo sugli effetti della reinizializzazione.
Le simulazioni sono volte a evidenziare quale sia il risultato che si ottiene risolvendo lo stes-
so problema con e senza la reinizializzazione della distanza. La figura ?? mostra la bolla
iniziale e la sua evoluzione dopo un tempo pari a 0.5 calcolata con e senza il procedimento
di reinizializzazione. In questo caso abbiamo scelto di effettuare la reinizializzazione a ogni
avanzamento temporale risolvendo tuttavia un solo passo pseudo-temporale per ogni istan-
te: questa scelta è stata fatta in quanto il movimento della bolla è causato principalmente
dall’effetto della gravità e solo in scarsa parte dalla tensione superficiale (il cui effetto rende
necessaria la reinizializzazione).
Figura 10.5: Bolla all’istante iniziale (a), e al tempo T=0.5 calcolata senza reinizializzazione
(b) e con reinizializzazione (c)
61
Figura 10.6: Γ al tempo T=0.5 ottenuto con (rosso) e senza (nero) reinizializzazione
La distorsione di Γ possiamo vedere che si concentra nelle estremità della bolla dove lo
spessore della bolla di fluido leggero è minore. Questa distorsione è un ulteriore problema
che la reinizializzazione porta con sè e che si può generalizzare come una opposizione ai
cambiamenti di topologia. In questo caso la bolla tende verso una forma con estremità
sottili che poi tendono a staccarsi dal corpo centrale della bolla: l’effetto della reinizializ-
zazione è di ingrandire queste appendici impedendo loro di staccarsi. Vedremo in seguito
che anche nel caso contrario di fusione di topologie (goccia d’acqua che cade in acqua fer-
ma) la reinizializzazione tende a ingrandire lo spazio che separa le topologie che si vogliono
unire impedendone la fusione.
Un rimedio generale per ridurre l’effetto della reinizializzazione sullo spostamento di Γ
che abbiamo trovato tramite alcune analisi può essere quello di cambiare il rapporto fra il
passo temporale dt e quello pseudo-temporale dτ : in questo modo se si aumenta questo
rapporto si dà meno peso al movimento indotto dalla reinizializzazione. Se possibile è con-
veniente inizialmente ridurre il passo pseudo-temporale che non ha nessun significato fisico
a differenza del dt: nella figura ?? si è aggiunta la frontiera calcolata con un dτ dimezzato
rispetto al valore consigliato di letteratura di dτ =1/dh. Questo passo pseudo-temporale
rappresenta un valore conservativo che garantisce l’efficacia della reinizializzazione sulle
curve di livello di φ. In alcuni casi è tuttavia possibile rimpicciolirlo per ridurre lo sposta-
mento della frontiera indotta dalla reinizializzazione e gli effetti seppur minimi sono visibili
nella figura ??.
Osserviamo infine che abbiamo svolto un test anche con dτ pari a 0.1/dh e in que-
sto caso gli effetti della reinizializzazione non sono apprezzabili in quanto le isolinee di φ
non vengono migliorate in alcun modo (la reinizializzazione non è efficace con un passo
pseudo-temporale così piccolo).
62
Figura 10.7: Γ al tempo T=0.5 con reinizializzazione con dτ = 1/dh (rosso), con
dτ = 0.5/dh (verde) e senza reinizializzazione (nero)
63
Parte III
u1 = u2 su Γ.
• gli sforzi che agiscono sui due lati di Γ devono essere bilanciati tenendo conto della
tensione superficiale che si traduce in una forza diretta come la normale alla superficie
libera. L’equazione che esprime l’equilibrio delle forze è
65
11.2 Metodi a cattura del fronte
La seconda categoria di metodi cade sotto il nome di metodi di cattura del fronte e descrive
tutti quegli approcci che mantengono fisso il dominio di calcolo descrivendo l’evoluzione di
entrambi i fluidi. In genere la presenza di fluidi caratterizzati da viscosità e densità diverse
viene trattata risolvendo il problema come se il dominio fosse riempito da un unico fluido le
cui proprietà cambiano attraversando la superficie libera che rappresenta una superficie di
discontinuità. Nella pratica questi metodi sono più usati rispetto a quelli di tracciamento
del fronte in quanto permettono di ottenere informazioni su entrambi i fluidi.
Questi metodi possono essere a loro volta suddivisi in base all’approccio che seguono: da
una parte ci sono i metodi che sfruttano i cosiddetti marker points, mentre dall’altra ci
sono quelli che sfruttano delle funzioni addizionali per descrivere l’interfaccia.
I metodi che sfruttano i marker points si basano sull’idea di descrivere l’interfaccia os-
servando lo spostamento di alcuni punti particolari: si inizializza il problema definendo
questi marker in prossimità dell’interfaccia e seguendone il movimento nel tempo. In ogni
istante l’interfaccia viene ricostruita unendo le posizioni dei marker points che inizialmente
erano vicini alla frontiera. Questo approccio tuttavia presenta alcuni problemi legati alla
difficoltà di ricostruire l’interfaccia a partire dalle posizioni dei marker ; per simulazioni su
tempi lunghi può inoltre capitare che i punti si distribuiscano in maniera non omogenea
lungo la frontiera in quanto si sono mossi con velocità diverse, rendendo cosi necessaria
una redistribuzione periodica dei punti all’interno del dominio. Un ulteriore limitazione
sta nel fatto che nel momento in cui si ricostruisce la superficie libera si cerca di mantenere
la topologia degli insiemi iniziali: se inizialmente l’interfaccia separa due insiemi connessi,
allora durante la ricostruzione del profilo si vorrà unire le posizioni dei marker mantenendo
gli insiemi connessi. Questo fatto preclude quindi la possibilità di trattare casi in cui si ha
un cambiamento di topologia (onde che si infrangono o gocce che cadono in acqua).
Mentre i metodi che utilizzano i marker points vengono detti metodi espliciti, la seconda
categoria di metodi a cattura del fronte vengono detti metodi impliciti e sono caratterizzati
dal fatto che le informazioni sulla posizione della superficie libera vengono ricavate dal
valore che assume una particolare funzione scalare
φ : Ω × (0, T ) −→ R.
La definizione di questa funzione caratterizza i metodi: i metodi più diffusi sono il VOF
(Volume Of Fluid) e il Level Set. Il metodo VOF descrive la posizione della frontiera fra
i fluidi attraverso la funzione
(
1 x ∈ Ω+ (t)
φV OF (x, t) = (11.1)
0 x ∈ Ω− (t)
66
desiderabili in quanto l’ipotesi di fluidi immiscibili non prevede la possibilità di avere
presenza nello stesso punto di entrambi i fluidi.
Il metodo del Level Set non presenta questo problema in quanto abbiamo già mostrato
nella parte precedente che la frontiera è determinata univocamente dall’insieme di livello
della funzione distanza che in questo caso assume la forma di
> 0
x ∈ Ω+ (t)
φLS (x, t) = = 0 x ∈ Γ(t) (11.2)
<0 x ∈ Ω− (t)
In tal modo è possibile definire la densità e la viscosità dei due fluidi attraverso variabili
in funzione della phiLS come segue:
Noi abbiamo già presentato il metodo del Level Set con una trattazione generale pre-
sentando tutti i problemi che possono essere legati al metodo a prescindere dal campo di
applicazione. In questa parte, tutte le simulazioni effettuate saranno svolte applicando il
Level Set al caso specifico della fluidodinamica per fluidi bifase.
67
12 Formulazione debole e alla Galerkin del problema accop-
piato
Le equazioni che regolano il fenomeno saranno ovviamente le equazioni di Navier-Stokes
per la parte del calcolo dei campi di velocità e pressione nel dominio e l’equazione del
Level Set per tracciare lo spostamento dell’interfaccia fra i fluidi. Il sistema di equazioni
che descrivono il fenomeno è pertanto:
∂u
+ ρ(φ) [(u· ∇)u] − ∇· µ(φ) ∇u + ∇uT + ∇p = ρ(φ)g + κσδ(φ)n
ρ(φ)
∂t
∇· u = 0 (12.1)
∂φ
+ u· ∇φ = 0
∂t
Richiamando gli spazi funzionali H1 (Ω),L20 (Ω) e Wu (Ω), la formulazione debole del nostro
problema accoppiato risulta essere:
per ogni t ∈ [0, T ] cerco u(x, t) ∈ H1 (Ω), p(x, t) ∈ L20 (Ω) e φ(x, t) ∈ Wu (Ω) tale che
mφ (ut , v) + aφ (u, v) + cφ (u, u, v) − b(v, p) = mφ (g, v) + (fΓ , v)
∀v ∈ H1 (Ω)
b(u, q) = 0 ∀q ∈ L20 (Ω)
(φt , ψ) + lu (φ, ψ) = 0 ∀ψ ∈ L2 (Ω)
(12.2)
in cui le forme scritte intendono:
• mφ (u, v) = (ρ(φ)u, v) ;
• b(u, q) = (∇· u, q) ;
La formulazione alla Galerkin è facile da ricavare una volta che si sono ricordati gli
spazi Vh ,Qh e Wh presentati in precedenza:
68
Osserviamo che in generale vista l’instabilità numerica dell’equazione del Level Set si
corregge la terza equazione introducendo un termine correttivo
j(φh , ψh )
che dipende dal tipo di stabilizzazione che si utilizza. Nel nostro caso rappresenta le
stabilizzazioni introdotte dai metodi di stabilizzazione Subgrid Viscosity o Subgrid Edge.
L’equazione per il Level Set nella formulazione di Galerkin è quindi:
∂φh
, ψh + luh (φh , ψh ) + j(φh , ψh ) = 0 ∀ψh ∈ Wh (12.4)
∂t
in cui δ(φ) è la delta di Dirach che assume valore unitario dove si annulla la funzione φ (su
Gamma) e è nulla in tutto il resto del dominio.
Un vantaggio del Level Set rispetto agli altri metodi è quello di lavorare con una funzione
distanza continua che descrive in maniera regolare l’interfaccia fra i due fluidi. E’ pertanto
facile calcolare la normale e la curvatura dell’interfaccia in ogni punto x ∈ Γ, in quanto
∇φ
n= ; (12.5)
|∇φ|
∇φ
κ = −∇· n = −∇· . (12.6)
|∇φ
Nel momento in cui però si va a discretizzare il problema nascono i problemi relativi alla
natura della delta di Dirach che è una funzione discontinua.L’approccio che si segue quindi
è quello di approssimare la delta attraverso una nuova funzione più regolare e liscia che
può assumere la seguente forma:
1 1 + cos( πφ(x)
se |φ(x)| ≤
δ (φ(x)) = 2 (12.7)
0 altrimenti
Nella formulazione alla Galerkin dell’equazione del bilancio della quantità di moto di
Navier-Stokes, il termine (fΓ , vh ) sarà quindi discretizzato come
Z
κσδ n· vh dΩ.
Ω
Si può dimostrare che questa approssimazione della delta di Dirach introduce un errore
localizzato vicino alla frontiera Γ dell’ordine di O(h).
69
13 Simulazioni
In questa ultima parte del lavoro presentiamo alcuni esempi di applicazioni del metodo
del Level Set su problemi di fluidodinamica. La scelta di questi problemi è stata fatta
con lo scopo di verificare la validità del metodo Level Set e valutare l’influenza dei diversi
parametri sulla soluzione.
Figura 13.1: Configurazione iniziale: bolla quadrata nel centro del dominio
Le condizioni iniziali dei fluidi (entrambi fermi) e il fatto che supponiamo di essere
in assenza di gravità, ci permettono di affermare che tutti i movimenti dei fluidi saran-
no esclusivamente causati dalla tensione superficiale. Come evidenziato nel capitolo ??
il movimento indotto dalla curvatura è l’unico moto che realmente necessita della reini-
zializzazione. Vediamo infatti dall’immagine ?? come dopo pochi istanti la forma della
bolla diventa instabile agli angoli della bolla stessa dove è più forte l’azione della tensione
superficiale.
E’ quindi vitale effetturare il procedimento di reinizializzazione frequentemente: nel
nostro caso abbiamo deciso di effettuare la reinizializzazione a ogni istante temporale ma
con solamente 1 iterazione del procedimento.
L’evoluzione temporale della forma della bolla è descritta nelle seguenti immagini: la bolla
inizialmente quadrata si deforma negli angoli e assume configurazioni che oscillano attorno
alla configurazione di equilibrio circolare a cui tenderebbe per tempi grandi.
70
Figura 13.2: Forma della bolla ottenuta senza reinizializzazione
Nel nostro caso abbiamo scelto di rappresentare istanti temporali multipli di 0.1 e
purtroppo in nessuno si vede con precisione la forma circolare. Tuttavia, in alcuni istanti
71
intermedi a quelli disegnati in figura ??, la bolla assume la forma circolare come mostrato
nella figura ?? corrispondente all’istante temporale t=0.72.
Figura 13.4: La bolla passa per la configurazione circolare mentre oscilla come mostrato
nella precedente figura
L’ultima analisi su questo caso riguarda il campo di velocità: al primo istante simulato
la velocità è non nulla solo in corrispondenza degli angoli della bolla dove la curvatura è
elevata (sui lati del quadrato invece la curvatura locale è nulla e pertanto non agiscono
forze). Successivamente la bolla cambiando forma ha una curvatura locale non nulla in
tutti i punti della frontiera: la figura ?? (b) mostra il come il modulo delle velocità sia
massimo ai 4 angoli (che questa volta sono a nord, sud, est e ovest) e non nullo anche lungo
i lati. Lontano dalla frontiera invece vediamo che la velocità diminuisce sia all’esterno che
all’interno della bolla, fino ad arrivare al valore nullo al centro della bolla.
(a) (b)
Figura 13.5: Campo di velocità all’istante iniziale (a) e durante l’avanzamento temporale
(b)
72
unisce cadendo all’acqua sottostante).
La simulazione si svolge in un dominio quadrato unitario con la bolla d’acqua inizialmente
di forma circolare (raggio R=0.1) centrata nel punto (0.5, 0.55); la parte inferiore del
dominio è occupata da acqua ferma fino all’altezza di 0.4. Le condizioni al bordo del
dominio sono di no slip sul fondo, free slip sui lati e free outflow sulla parte superiore del
dominio. La soluzione numerica è inizialmente effettuata con un passo temporale dt = 0.02
e con il passo pseudo-temporale dτ pari a n1 come suggerito dalla teoria. Tuttavia questa
risoluzione non è in grado di catturare l’unione della goccia con l’acqua, ossia non riesce a
affrontare il cambiamento di topologia!
Figura 13.6: La figura mostra come un passo dτ troppo grande non consenta l’unione delle
topologie
La figura ?? mostra come al posto di avere il congiungimento della bolla con l’acqua,
abbiamo una deformazione del livello d’acqua ancora prima che la bolla raggiunga l’acqua.
Questo è dovuto al fatto che mentre la bolla cade le isolinee della φ si infittiscono nello
spazio che separa la bolla dall’acqua: questo infittirsi si traduce in una funzione distanza
molto ripida nei pressi dell’interfaccia aria-acqua. L’effetto della reinizializzazione in questo
caso è quindi quello di "stendere" queste isolinee lisciando la funzione φ.
Figura 13.7: Differenze fra i profili ottenuti prima e dopo la reinizializzazione al tempo
t=0.16
73
Questo effetto tuttavia causa un allargamento dello spazio reale che separerebbe la
bolla e l’acqua: questo spazio creato dalla reinizializzazione non viene quindi mai colmato
impedendo l’unione delle due topologie. La figura ?? mostra come durante la reinizializza-
zione l’interfaccia venga spostata anche sul pelo libero dell’acqua ferma: il livello d’acqua
viene abbassato creando ulteriore spazio fra le 2 topologie.
Come soluzione a questo problema proponiamo quella di diminuire il passo pseudo-
temporale: l’idea nasce dal fatto che l’equazione (??) scritta per un passo pseudo-temporale
dτ finito diventa
∆φ = dτ [sign(φ0 ) (1 − |∇φ|)] τ ≥0 (13.1)
Possiamo quindi ipotizzare che la variazione della funzione distanza sia proporzionale
alla grandezza del passo pseudo-temporale: diminuendo dτ riteniamo quindi che si abbia
una variazione minore di φ e quindi anche un minore spostamento dell’interfaccia Γ.
Alla luce di questa ipotesi abbiamo scelto di utilizzare un passo dτ = 0.01 n e i risultati
ottenuti sono migliori.
Come possiamo infatti vedere dalle immagini di figura ??, con il passo pseudo-temporale
proposto, le topologie si uniscono: tuttavia facciamo notare che, nonostante la riduzione
di dτ , prima dell’arrivo della bolla è ancora presente un leggero abbassamento del livello
dello strato d’acqua inizialmente ferma (vedi fig ??(b)). Il fatto che però è meno evidente
rispetto al caso precedente ci porta a ipotizzare che effettivamente la grandezza di dτ abbia
effetto sulla unione delle topologie.
L’evoluzione temporale mostrata in figura mostra come la goccia cadendo generi due onde
che si propagano verso i lati del dominio e che poi vengono riflesse all’interno del dominio.
Per quanto riguarda il campo di velocità, è interessante notare come si formino due vortici
in presenza delle creste dell’onda che si vengono a creare dopo la caduta della goccia.
Questi vortici sono evidenziati in figura ?? dal colore più chiaro in prossimità delle onde:
questa velocità minore sta a indicare che in quei punti sono situati i centri di rotazione dei
due vortici che si vengono a creare.
Figura 13.8: Intensità del campo di velocità generato dalla caduta della goccia
74
(a) (b) (c)
(g) (h)
75
un muro che riflette la massa d’acqua che vi va a sbattere.
La simulazione è stata effettuata fino al tempo T=2 con un passo dt = 0.05.
76
(a) (b) (c)
77