Méthode des Volumes Finis
Thomas GomezLaboratoire Mécanique de Lille
Lille 1
Master 2 SMI
1
Méthodes Numériques Avancéespour la Mécanique des Fluides
Plan du coursIntroduction à la méthode des volumes finis
Exemples de simulations
Eléments de base et exemple de logiciel (Fluent)
Approximations et bases des schémas VF
Maillage
Approximation des intégrales de surface
Approximation des intégrales volumiques
Construction d’un schéma aux Volumes finis
Exemples: Problèmes 1D
Résolution des équations de NS Incompressible Méthode de projection explicite sur maillage décalé « MAC »
2
Exemples de simulations
Mécanique des fluidesAérodynamique
ThermiqueAéro-acoustique
Magnétohydrodynamique
Aéro-elasticitéEcoulements multiphasiques
BiomécaniqueMétéorologie
Combustion
Bibliographie
Chapter 4 : “Finite Volume Methods” of “J. H. Ferziger and M. Peric, Computational Methods for Fluid Dynamics. Springer, NY, 3rd edition, 2002”
Chapter 5 : “Finite Volume Methods” of “H. Lomax, T. H. Pulliam, D.W. Zingg, Fundamentals of Computational Fluid Dynamics (Scientific Computation). Springer, 2003”
Chapter 5.6 on “Finite-Volume Methods” of T. Cebeci, J. P. Shao, F. Kafyeke and E. Laurendeau, Computational Fluid Dynamics for Engineers. Springer, 2005.
4
Eléments de base relatifs à la mise en oeuvre
d’un code utilisant lesVolumes Finis
Workbench ANSYSSolver FLUENT
5
Introduction
[email protected] 65 [email protected]
Equations de conservationMasse, Quantité de mouvement, Energie
Differences finis
Basée sur la discrétisation des opérateurs différentiels des éqns de conservation
Volumes finis
Basée sur la discrétisation de la forme intégrale des éqns de conservation
d
dt
Z
CV⇢�dV +
Z
CS⇢�(v · n)dA = �
Z
CSq · ndA+
XZ
CVS�dV
Méthode des volumes finis : Introduction
66
Méthode des volumes finis : Introduction
Concepts de base pour la construction de schéma VF
Génération de Maillage (CVs)
Diviser le domaine numérique en CV (control volume)
Assurer la conservation : pas de superposition de maillage
Discrétiser les équations de conservation sous forme intégrale sur les CVs
Satisfaire la forme intégrale des lois de conservation avec un ordre de précision donné pour chaque CVs contigus.
Résoudre les équations résultantes avec intégrales/flux discrétisés
Méthode des volumes finis : Introduction
Avantages1. Assure une discrétisation conservative localement et
globalement
Masse, moment et énergie conservés sous forme discrétisée
Conservation globale : retrouvée lorsqu’on somme les équations sur toutes les CVs Somme des intégrales de surface =0
Locale/Globale conservation peut être obtenu avec DF mais naturelle/directe dans formulation VF.
2. Ne nécessite pas de transformation de coordonnées pour être appliqué sur des maillages irréguliers.
68
Lois de conservation de la quantité de mouvement
Volume de contrôle discrétisé.
Hypothèse :
Volume de contrôle indépendant du temps
<=> maillage fixe en temps (dans la suite du cours).
Méthode des volumes finis : Introduction
69
d
dt
Z
CV⇢�dV +
Z
CS⇢�(v · n)dA = �
Z
CSq · ndA+
XZ
CVS�dV
V (t)
V (t) = V
Méthode des volumes finisApproximations
Intégrer l’équation sous forme discrète
Méthode ‘Time marching’ pour intégrerjusqu’au pas de temps suivant.
70
d
dt
Z
CV⇢�dV +
Z
CS⇢�(v · n)dA = �
Z
CSq · ndA+
XZ
CVS�dV
� =
Z
V⇢�dV
Méthode des volumes finisApproximations
Intégrer l’équation sous forme discrète
Estimation du flux aux frontières de chaque CV
= Flux d’Advection + de Diffusion
71
d
dt
Z
CV⇢�dV +
Z
CS⇢�(v · n)dA = �
Z
CSq · ndA+
XZ
CVS�dV
F�
Z
SF� · ndA =
Z
S⇢�(v · n)dA+
Z
Sq� · ndA
F�
Méthode des volumes finisApproximations
Intégrer l’équation sous forme discrète
Estimation du terme source intégré sur chaque CV
Eqns Cons =>
72
d
dt
Z
CV⇢�dV +
Z
CS⇢�(v · n)dA = �
Z
CSq · ndA+
XZ
CVs�dV
S� =
Z
Vs�dV
S�
d�
dt+
Z
SF� · ndA = S�
Méthode des volumes finisApproximations
Intégrer l’équation sous forme discrète
Estimation du terme source intégré sur chaque CV
Eqn Cons =>
Lien entre et ?
73
d
dt
Z
CV⇢�dV +
Z
CS⇢�(v · n)dA = �
Z
CSq · ndA+
XZ
CVs�dV
S� =
Z
Vs�dV
S�
d�
dt+
Z
SF� · ndA = S�
��
Méthode des volumes finisApproximations
Moyenne sur un CV:
Equation à résoudre
Après intégration discrète: nouvelle valeur de ?
74
�̄ =1
V
Z
V⇢�dV
�̄
Vd�̄
dt+
Z
SF� · ndA = S�
�̄
Méthode des volumes finisApproximations
Estimation du flux total aux frontières de CV:“Reconstruction“ de à partir de
Flux fonctions de => pour le évaluer il faut une représentation de à l’intérieur du CV.
Peut être fait par une approximation par morceaux, qui redonne après intégration.
Mais chaque cellule à sa propre approximation par morceaux=> les flux peuvent être discontinus aux interfaces.
Remèdes:Prendre la moyenne des flux de chaque CV aux interfaces : méthode non dissipative => schéma analogue aux differences centrées
Flux-difference splitting
75
F�
�̄�
�
�̄
�
Elements de base pour la construction du schéma VF
1. A partir de la valeur moyenne sur chaque CV, construire une approximation de dans chaque CV pour évaluer les flux .
Déterminer les approximations de aux interfaces et en déduire une estimation du flux .On obtient généralement 2 valeurs distinctes pour chaque cellule à leur interface commune.
2. Appliquer une Stratégie de résolution de la discontinuité à l’interface => valeur unique du flux sur l’intégralité de l’interface
3.Intégration des flux pour obtenir les intégrales de surface.
4.Calcul des intégrales de volume sur chaque CV : termes sources.5.Avancée en temps pour obtenir la nouvelle valeur de au pas de
temps suivant.
76
F�
�̄�
�
�̄
F�
F�
Vd�̄
dt+
Z
SF� · ndA = S�
Différents types de Grille en VF
Approche usuelle CV définis par les coordonnés des noeuds du maillage
Assignation du noeud au centre du CV
Avantage: la valeur moyenne sur le CV donne une approximation de la valeur au noeud centrale au second ordre.
Approche alternativeDéfinir d’abord la position du noeud central
Construire les CV autour de ces noeuds tels que les interfaces entres le cellules soient au milieu des noeuds.
Avantage: Approximations centrées des dérivés (flux) aux frontières sont plus précises.
Autres variantesCell centered vs Cell vertex
Structuré
Tous les points du maillage sont à l’intersection de 2/3 lignes (2D/3D)
vs Non Structuré
Les mailles sont des triangles ou des quadrilatères en 2D, des tétraèdres ou des pyramides en 3D
Les cellules sont identifiées par leur numéro et ne peuvent être identifiées par leurs coordonnées indicielles (i,j,k).
Différents types de Grille en VF
78
RemarquesLe principe des VF est le même quelque soit le type de grille.
Seules changent les relations entre les positions des noeuds sur la grille et les précisions des approximations.
2D/3D Cartésien Flux à travers les frontières des CV
Somme des intégrales sur les 4 (2D) ou 6 (3D) faces
Calcul des intégrales de surface
doit être connu partout sur la surface
Seulement est connu : valeur moyenne associée aux noeuds du maillage (centre des cellules)
i) Déterminer des approximations des valeurs de en un ou plusieurs points de l’interface.
ii)En déduire une approximation des intégrales à partir des valeurs nodales.
Approximation des intégrales de surface
79
Ferziger & Peric 2002
Z
SF� · n dA =
X
k
Z
Sk
f�dA
��̄
�
Cas 2D: Surface 1DBut : Estimer
Approximation du point milieu: approximé par
Comme n’est pas connu, il faut obtenir une approximation par interpolation
Rmq: Doit être obtenu avec une précision au second ordre pour préserver la précision de la règle du point milieu.
Approximation des intégrales de surface
80
Fe
fe
Fe =
Z
Se
f�dA = f̄eSe = fe · Se +O(�y2) ⇡ feSe
Ferziger & Peric 2002
f(y) = f(ye) + ⇠f 0(ye) +⇠2
2!f 00(ye) +O(�y3) , ⇠ = y � ye
Fe =
Z
Se
f�dA
Cas 2D: Surface 1DBut : Estimer
Approximation du second ordre : Méthode des trapèzes
approximé par
Les flux dans les angles et sont obtenus par interpolation.
Rmq: Doivent être obtenus avec une précision au second ordre pour préserver la précision de la méthode des trapèzes.
Approximation des intégrales de surface
81
Fe =
Z
Se
f�dA
Fe Ferziger & Peric 2002
f(y) = f(ye) + ⇠f 0(ye) +⇠2
2!f 00(ye) +O(�y3) , ⇠ = y � ye
Fe =
Z
Se
f�dA = Sefne + fse
2+O(�y2) ⇡ Se
fne + fse2
fne fse
Cas 2D: Surface 1D
Approximation d’ordre supérieur : nécessite la connaissance du flux en plus de 2 points.
Exemple: Méthode de Simpson, Ordre 4
est approximé par
Les flux doivent être déterminés en 3 points.
Rmq: Une interpolation polynomiale cubique doit être utilisée pour exprimer ces flux en fonction des valeurs moyennes dans les cellules voisines:
Approximation des intégrales de surface
82
FeFerziger & Peric 2002
Fe =
Z
Se
f�dA = Sefne + 4fe + fse
6+O(�y4) ⇡ Se
fne + 4fe + fse6
�̄
�̄P , �̄E , �̄S , �̄SE , �̄N , �̄NE , ...
Fe =
Z
Se
f�dA
Cas 3D: Surface 2DBut : Estimer
Approximation du point milieu (2nd ordre):
approximé par
Approximation des intégrales de surface
83
Fe =
Z
Se
f�dA
FeFerziger & Peric 2002
Fe =
Z
Se
f�dA = f̄eSe = fe · Se +O(�y2,�z2) ⇡ feSe
Une approximation d’ordre supérieure nécessiterait la connaissance du flux en plus de points, en pratique complexe à implémenter pour des cellules en 3D.
L’intégration est facilitée si l’on considère que l’on peut représenter la solution sur la surface par une interpolation polynomiale, qui sera alors intégrée de façon exacte.
But : Estimer
Approximation la plus simple:produit du volume de la cellule par la valeur moyenne de l’intégrant sur la cellule (approximée au noeud P centre de la cellule)
Approximation des intégrales de Volume
84
Ferziger & Peric 2002
Exacte si est constant ou linéaire à l’intérieur de CV
Approximation du second ordre sinon.
Une approximation à des ordres supérieurs requiert des valeurs dans un plus grand nombre de noeuds voisins.
S� =
Z
Vs�dV
S� =
Z
Vs�dV = s̄pV ⇡ spV
sp
But : Estimer
Approximation d’ordre supérieurRequiert des valeurs supplémentaires
Peuvent être obtenus par interpolation nodale ou par l’utilisation de fonctions de forme polynomiales.
Exemple 2D (l’intégrale de volume est alors une intégrale de surface) de l’utilisation des fonctions de forme polynomiale.
Une fonction de forme bi-quadratique => approximation du 4ème ordre (9 coeff.)
9 coefficients obtenus par fit des valeurs voisines (centres, noeuds, milieux).
Exemple: Intégration pour une grille cartésienne
Approximation des intégrales de Volume
85
S� =
Z
Vs�dV
s(x, y) = a0 + a1x+ a2y + a3x2 + a4y
2 + a5xy + a6x2y + a7xy
2 + a8x2y2
SP =
Z
Vs�dV = �x�y
ha0 +
a312
�x2 +a412
�y2 +a8144
�x2�y2i
Ferziger & Peric 2002
But : Estimer
Exemple 2D de l’utilisation des fonctions de forme polynomiale.Exemple d’intégration pour une grille cartésienne
Seul 4 coefficients restent, mais ils dépendent toujours de 9 valeurs nodales.
Seule la valeur en P est accessible, les autres valeurs sur la surface doivent être interpolées.
Rmq: Les interpolations doivent être au moins à l’ordre 4 pour préserver l’ordre de précision de l’intégration.
Approximation des intégrales de Volume
86
S� =
Z
Vs�dV
SP =
Z
Vs�dV = �x�y
ha0 +
a312
�x2 +a412
�y2 +a8144
�x2�y2i
SP =
Z
Vs�dV =
�x�y
36[16sP + 4sS + 4sN + 4sE + 4sW + sSE + sNE + sNW + sSW ]
Ferziger & Peric 2002
Cas 3D de l’utilisation des fonctions de forme polynomiale.Le principe est le même que pour le cas 2D : extension direct jusqu’au 4ème ordre
Ordre plus élevé:
Approximation des intégrales plus complexe.
Les formules d’interpolation sont plus complexes.
But : Estimer
Approximation des intégrales de Volume
87
S� =
Z
Vs�dV
Ferziger & Peric 2002
Intégrale de SurfaceProblème 2D (Surface d’intégrale 1D)
Formule du point milieu (2nd ordre)
Formule des trapèzes (2nd ordre)
Formule de Simpson (4ème ordre)
Problème 3D (Surface d’intégrale 2D)
Formule du point milieu (2nd ordre)
Ordre plus élevé plus compliqué à implémenter en 3D.
Intégrale de Volume2D/3D, formule du point milieu (2nd ordre)
2D, bi-quadratique (4ème ordre en cartésien)
Approximation des intégrales de Surface/VolumeFormules de Quadrature
88
1.Génération de la grille : CV2.Discrétisation des équations de conservation sous forme intégrale sur
chaque CVL’équation sous forme intégrale s’écrit
Pour un volume fixe:
les variables discrètes inconnues sont les valeurs moyennes sur chaque cellule
Définir les formules de quadrature pour le calcul des intégrales de surface/volume en fonction de pour une CV.
Evaluer les intégrales à l’aide des valeurs de sur les points voisins.
Définir des formules d’interpolation pour obtenir les valeurs de nécessaires aux points définis dans la formule de quadrature.
Approche alternative: définir des fonctions par morceaux sur chaque CV et s’assurer qu’elles satisfont les contraintes imposées par .
Choisir une stratégie pour régulariser les discontinuités aux interfaces
Construction d’un schéma Volume Fini Etapes principales
89
�̄P
��
=) �̄P
�
Discrétisation de l’équation de conservation sous forme intégrale sur chaque CV
Forme intégrale
Génération des CVConsidérons un maillage homogène
Volume de contrôle
Valeurs aux interfaces
Flux (convection + diffusion) aux interfaces
Valeur moyenne et terme source
Exemple 1D : Schémas Générique
90
xj = j�x
[xj ��x/2, xj +�x/2]
�j±1/2 = �(xj±1/2)
fj±1/2 = f(xj±1/2)
Sj(t) =
Z
Vs�dV =
Z xj+1/2
xj�1/2
s�(x, t)dx�̄j(t) =1
V
Z
V�dV =
1
�x
Z j+1/2
xj�1/2
�(x, t)dx
Vd�̄
dt+
Z
SF� · ndA = S�
=) d�x�̄
dt+ fj+1/2 � fj�1/2 =
Z xj+1/2
xj�1/2
s�(x, t)dx
Ferziger & Peric 2002
Montrer que la valeur moyenne sur une cellule peut être approchée par la valeur nodale au centre de la cellule avec une erreur d’ordre 2.
TD : Valeur moyenne vs valeur au centre
91
�̄j(t) = �j(t) +O(�x2)
Linear convectionEquation
Calcul des flux aux interfaces :
Approximation de : fonction constante par morceaux
Flux simples mais discontinus aux interfaces:
Régularisation en moyennant les flux de chaque coté de l’interface.
Exemple 1D : Sommerfeld équation
92
Ferziger & Peric 2002
@�(x, t)
@t+ c
@�(x, t)
@x= 0
=) d�x�̄j
dt+ fj+1/2 � fj�1/2 = 0
d�x�̄j
dt+ fj+1/2 � fj�1/2 =
Z xj+1/2
xj�1/2
s�(x, t)dx
fj±1/2 = f(�j±1/2) = f(�(xj±1/2))
�(x)
�(x) = �̄j , 8x 2 [xj�1/2, xj+1/2]
Exprimer les flux aux interfaces des CV en fonction des valeurs moyennes
Régulariser les discontinuités des flux aux interfaces
=> moyenne des flux de chaque coté de l’interfaces: estimation du 2nd ordre
On substitue dans l’équation
Conditions limites
Périodique
Dirichlet
Neumann
Exemple 1D : Sommerfeld équation cont’d
93
Ferziger & Peric 2002
f̂j�1/2 =fLj�1/2 + fR
j�1/2
2=
c�j�1 + c�j
2f̂j+1/2 =
fLj+1/2 + fR
j+1/2
2=
c�j + c�j+1
2
d(�x�̄j)
dt+ fj+1/2 � fj�1/2 ⇡ d(�x�̄j)
dt+ f̂j+1/2 � f̂j�1/2 =
d(�x�̄j)
dt+
c�j + c�j+1
2+
c�j�1 + c�j
2
=) �xd�̄j
dt+
c�j+1 � c�j�1
2= 0
Conditions limites périodiques, système tridiagonal
Système équivalent au schéma différences finis centrées
2nd ordre en espace
Même propriétés que les schémas DF centrées
Non dissipatif : Analyse de Fourier ou valeur propre de imaginaires, présence d’oscillations possibles
Stabilité du schéma en temps: mêmes conditions que les DF pour la convection linéaire
Si centré en temps, centré en espace, explicite : Stable avec condition CFL
Si implicite en temps: inconditionnellement stable
Exemple 1D : Sommerfeld équation cont’d
94
d�̄��
dt+
c
2�xBBBp(�1, 0, 1)�̄�� = 0
BBBp
c�t
�x 1
8�x,�t
Ordre 4 => TD
Conditions limites périodiques, sytème penta-diagonale avec 4 diagonales non nulles
Exemple 1D : Sommerfeld équation cont’d
95
d�̄��
dt+
c
12�xBBBp(1,�8, 0, 8,�1)�̄�� = 0
EDP parabolique du 2nd ordre
Forme intégrale identique à l’équation pour l’advection
avec
Approximation des intégrales de surface (flux)
Première approche : Directe en utilisant DF centrées et
Exemple 1D : Equation de diffusion
96
@�(x, t)
@t= ⌫
@2�(x, t)
@x2
d(�x�̄j)
dt+ fj+1/2 � fj�1/2 = 0
�̄j = �j +O(�x2)
fj�1/2 = �⌫@�
@x|j�1/2 = �⌫
�j � �j�1
�x+O(�x2)
fj+1/2 = �⌫@�
@x|j+1/2 = �⌫
�j+1 � �j
�x+O(�x2)
f = �⌫r� = �⌫@�
@x
On substitue dans l’intégrale
Forme matricielle
Forme semi discrète analogue au schéma DF centré mais en terme de valeurs moyennes sur les cellules.
Exemple 1D : Equation de diffusion (suite)
97
d(�x�̄j)
dt+ f̂j+1/2 � f̂j�1/2 = �x
d�̄j
dt+ ⌫
�j�1 � 2�j + �j+1
�x= 0
d�̄��
dt=
⌫
�x2BBB(1,�2, 1)�̄��+ (BCBCBC)
Seconde approche :
Utilisation d’une d’approximation quadratique par morceaux
a,b,c définis par les contraintes de moyenne sur les volumes
a,b sont symétriques, il n’y a donc pas de discontinuités aux interfaces.
Equation intégrale
Forme matricielle
Forme semi discrète analogue au schéma DF centré
Exemple 1D : Equation de diffusion (suite)
98
�(⇠) = a⇠2 + b⇠ + c =) @�
@x=
@�
@⇠= 2a⇠ + b
d�̄��
dt=
⌫
�x2BBB(1,�2, 1)�̄��+ (BCBCBC)
d(�x�̄j)
dt+ f̂j+1/2 � f̂j�1/2 = �x
d�̄j
dt+ ⌫
�j�1 � 2�j + �j+1
�x= 0
fRj+1/2 = fL
j+1/2 = �⌫@�
@x|j+1/2 = �⌫
�j+1 � �j
�x+O(�x2)
fRj�1/2 = fL
j�1/2 = �⌫@�
@x|j�1/2 = �⌫
�j � �j�1
�x+O(�x2)
Conditions limites
Imposées directement sur les flux convectifs
Formule décentrée pour les flux diffusifs
Exemple 1D : Equation de diffusion (suite)
Méthodes numériquespour la résolution des équations de
Navier-Stokes IncompressibleMéthode de projection explicite sur
maillage décalé « MAC »
100
Problèmes à résoudre
Trouver une méthode d’intégration en temps.
Décider comment discrétiser les termes d’advection et de
diffusion visqueuse.
Choisir une méthode de résolution de l’équation pour la pression issue de la condition de continuité.
Mise en oeuvre de l’application des conditions aux limites.
Méthode de Projection
Champ de vitesse provisoire
Puis projection sur un champ de vitesse incompressible (à divergence nulle)
Méthode proposée par Alexandre Chorin en 1968
Exemple :
102
un+1 � un
�t+An
h = � 1
⇢n(rhp�Dn
h � fn� ) + fnb
Incompressibilité
Le champ de vitesse doit être incompressible à la fin du pas de temps
103
rh · un+1 = 0
Calcul de champ provisoire
Champ provisoire
Calcul du champ final
104
u⇤ � un
�t= �An
h + fnb +1
⇢n(Dn
h + fn� )
un+1 � u⇤
�t= � 1
⇢nrhp
rh ·✓
1
⇢nrhp
◆=
1
�tr · u⇤
Condition de stabilité
Condition de stabilité de von Neumann pour les termes visqueux
La condition CFL indique les points matériels se déplacent de moins d’une distance h pendant un pas de temps
On applique souvent des méthodes sophistiquées en fractionnant l’opérateur selon les directions d’espace. Ecrivons le problème (NS sans la pression par exemple) sous la forme avec
105
�t
@tu = L(u)
L(u) = L1(u) + L2(u) + L3(u)
Méthode de pas fractionnaire
Pas fractionnaire
Exemple
106
@tu+ u@xu+ v@yu+ w@zu = L4(u, p)
L1 L2 L3
u⇤,1 = un +�tL1(un)
u⇤,2 = u⇤,1 +�tL2(u⇤,1)
u⇤,3 = u⇤,2 +�tL3(u⇤,2)
Méthodes d’ordre plus élevé en temps
Calcul d’un champ provisoire par la méthode ci-dessus
Calcul du champ définitif (prédicteur correcteur).
107
utmp
un+1 � un
�t=
1
2
�RHS
n +RHStmp�
Problème des écoulements avec forces capillaires
Condition de stabilité? La vitesse des ondes capillaires est modification de la condition CFL
108
�t (⇢1 + ⇢2)h3
⇡�
�1/2
c =
�k
⇢1 + ⇢2
�1/2
Méthode des Volumes Finis
Valeur moyenne : Vitesse
Terme d’advection
Terme de diffusion
109
uc =1
V
Z
Vu(x)dV
Ac =1
V
Z
Vr · (uu)dV =
1
V
Z
Su(u · n)ds
Dc =1
V
Z
Vr · µ(rhu+rT
hu)dV =1
V
Z
Sµ(rhu+rT
hu) · nds
Formulation intégrale des différents termes
Pression
Force de volume
Equation de continuité
110
(rp)c =1
V
Z
VrpdV =
1
V
Z
Spnds
(fb)c =1
V
Z
Vfb(x)dV
1
V
I
Su · nds = 0
Méthode MAC
Maillage décalé ou staggered dit « MAC » (Marker and Cell)
Equation de continuité en maillage décalé MAC
Equation de continuité
En approchant les moyennes par la valeur au point milieu
112
Volumes de contrôle pour la vitesse
CV différent pour chaque composante de la vitesse
Equations pour les vitesses provisoires
Détermination des champs de vitesse intermédiaires
114
Etape de projection
Etape de projection sur l’espace des champs de vitesse à divergence nulle:
Utilisation du champ de pression calculé à l’étape précédente
Pourquoi utiliser les maillages décalés MAC
Précision : le gradient de pression est calculé avec des termes espacés de au
lieu de dans un maillage colocatif.
Construction plus simple des méthodes conservatives.
Le couplage entre les variables est plus fort. Sur un maillage colocatif, l’équation
de continuité couple les variables de vitesses « en damier »: les rouges avec les
rouges et les noirs avec les noirs.
116
�x
2�x
Maillage colocatif
Sur un maillage colocatif (non décalé), les sous grilles rouges et noires ne sont pas couplées par l’équation de continuité.
117
Découplage Noir/Rouge
Discrétisation des termes d’advection
Termes d’advection
Les vitesses sont définies au noeuds correspondants du maillage MAC, mais dans la formule les flux doivent être calculés sur des noeuds décalés par rapports aux noeuds MAC.
La façon d’approximer les termes de flux à partir des vitesses définies sur les maillages MAC caractérise la méthode utilisée.
118
(Ax)i+1/2,j =1
�x�y
⇥((uu)i+1,j � (uu)i,j)�y +
�(uv)i+1/2,j+1/2 � (uv)i+1/2,j�1/2
��x
⇤
Schéma du 2nd ordre
Second ordre mais instable
Stabilisation
Pour stabiliser les schéma il faut ajouter de la viscosité numérique, ce qui conduit à des pas de temps petits.
On peut aussi obtenir un schéma modifié, robuste et stable en utilisant les vitesses « amonts ».
Par exemple : on estime les vitesses sur les noeuds d’indice entier par.
120
Schéma QUICK
Le schéma décentré a cependant trop de diffusion numérique. Cela peut être évité en utilisant des schémas décentrés d’ordre plus élevé, par exemple le schéma QUICK de Leonard.
Exercice : Déterminer l’ordre de précision de ce schéma.
Schéma ENO
Un schéma encore plus robuste est le schéma ENO de Shu et Osher où la pente est la plus petite, en valeur absolue, des deux expressions
122
si
Discrétisation des termes visqueux
Termes visqueux
On estime ensuite les dérivées par des différences finies ordinaires
Equation de la pression
L’équationse discrétise
Nous considérerons la masse volumique comme uniforme dans la suite.
124
Conditions aux limites pour l’équation de la pression
Considérons un exemple où la paroi de gauche se déplace horizontalement à la vitesse .
L’équation de continuité au noeud devient
125
Ub
i, j
Equation correctrice
Comme la vitesse est connue en un des quatre points, on ne substitue l’équation correctrice que dans trois directions ce qui donne
On peut aussi réaliser cette égalité en définissant des pressions « fictives » sur les noeuds de pression à l’intérieur de la paroi
126
pi�1,j = pij
Condition limites : équation de la pression
Méthode SOR
Dans la méthode SOR la pression est remise à jour à chaque pas de temps par la relation
128
Méthode SOR (suite)
La méthode de relaxation consiste à calculer en fonction des valeurs précédentes.
Aussitôt qu’une nouvelle valeur est calculée en un point elle peut être réutilisée immédiatement pour le calcul du point suivant en . Pour éviter les pertes de performances dans les machines à accélération vectorielle, on calcule d’abord tous les points d’une sous-grille noire, plus touts les points d’une sous grille rouge. Une méthode qui alterne ainsi les deux sous grilles est appelée méthode SOR rouge-noir.
Le coefficient est appelé coefficient de sur-relaxation. Une valeur de 1.2 est souvent utilisée.
Au premier pas de temps la pression est initialisée à zéro.
129
pij
i, ji+ 1, j
�
Méthode SOR (suite)
Le principal avantage de la méthode SOR est sa simplicité. Cependant elle peut devenir instable dans le cas ou le rapport de densité est grand. Il faut alors trouver d’autres méthodes plus adaptées.
De nombreuses méthodes très efficaces existent pour résoudre l’équation de la pression lorsque la densité est uniforme. Il est plus difficile d’en trouver lorsque le gradient est non-uniforme.
130
Méthodes multigrilles
Une méthode très populaire est la méthode multigrilles. Pour comprendre cette méthode il est bon d’analyser plus en détail la méthode SOR. Cette méthode peut en effet être vue comme la résolution d’une équation annexe avec un pas de temps fictif
Cette équation est discrétisée explicitement en temps avec un pas de temps . Fixer est équivalent à fixer le coefficient de surrelaxation .
Cette équation fictive est une équation de la chaleur. Aux temps long la solution vérifie l’équation de correction de la pression dérivée plus haut:
131
�s�s �
Méthodes multigrilles (suite)
Le pas de temps est limité par la condition de von Neumann avec ici d’où
Par contre le temps de diffusion est d’ordre
Le nombre d’itérations nécessaires est donc
132
µ�s
⇢h2<
1
4
µ = 1 �s <1
4⇢minh
2
T ⇡ ⇢maxL2
Méthodes multigrilles (suite)
Le nombre d’itération est donc ce qui peut être très grand pour de grandes grilles.
Il est donc astucieux de transférer le problème à des grilles plus petites, en moyennant les paramètres du problème pour passer de la grille fine (la grille de départ de taille ) à la grille grossière (une grille de taille ). Le nombre d’itérations devient alors 4 fois plus rapide sur la grille grossière. On peut ensuite retransférer la solution sur la grille fine. On s’est rapproché de la solution et on converge ainsi plus vite.
133
Nx Nx/2
Méthodes multigrilles (suite)
En continuant à transférer sur des grilles de plus en plus grossières on peut arriver à un nombre d’itération indépendant de la taille de la grille.
On effectue ainsi des cycles alternant entre les grilles fines et grossières.
134
Méthodes multigrilles (suite)
Les solveurs multigrilles ont des difficultés avec les grands rapports de masse volumique.
Par conséquent les chercheurs ont essayés d’autres méthodes comme les méthodes de sous-espace de Krylov.
Conditions limites en vitesse
Pour la composante de vitesse parallèle au bord il faut faire des extrapolations à partir de « points fantômes » (ghost points)
d’où l’on tire
136
Conditions limites en vitesse
Conditions de glissement libre (contrainte tangentielle nulle)
Un autre type de condition aux limites importantes sont les conditions en entrée et de sortie de fluide.
On veut en général des conditions qui perturbent l’écoulement aussi peu que possible, simulant un domaine par rapport à l’objet à étudier.
Conditions de sortie de fluide
138
Conditions de sortie de fluide (suite)
La situation la plus simple se produit quand les conditions de sortie sont telles que l’on peut imposer exactement vitesse perpendiculaire à la frontière de sortie (outflow boundary).
Une autre possibilité est de supposer que les lignes de courant sont perpendiculaires à la frontière de sortie. Ce qui implique que . Il en résulte par l’équation de continuité que .
On doit donc imposer une correction de pression de la forme
139
@u
@x= 0
@v
@y= 0
Conditions aux limites périodiques
Les conditions aux limites périodiques sont réalisées quand pour toute variable a. Pour réaliser cette condition numériquement on place des points fantômes à gauche de la frontière de gauche en et à droite de la frontière en , et on affecte à ces points les valeurs
Le nombre total de points dans le domaine, incluant et est ainsi , tandis que en ajoutant les points fantômes on compte points.
140
i1i2 = i1 +N � 1
ai1�1 = ai2 ai2+1 = ai1
i1 i2 N
N + 2
Exemple de schémasCas Linéaire
Exemple de schémasCas Linéaire
Stabilité : Critère de choix pour le pas de temps
142
Résolution de l’équation de Burgers
Schéma de Lax Wendroff - Volumes Finis
avec .
Erreur de troncature :
143
un+1j = un
j � ↵⇣f̂j+1/2 � f̂j�1/2
⌘
↵ =�t
�x
f̂j+1/2 =1
2
⇥f(un
j ) + f(unj+1)
⇤� ↵
2
⇥f(un
j+1)� f(unj )⇤f 0
✓unj + un
j+1
2
◆
O(�x2 +�t2)
Exemple de code mise en oeuvreSchéma de Lax Wendroff! **************************************************************
function g_LW(a,b) ! Flux numerique de Lax-Wendroff
double precision, dimension(Nx) :: g_LW, approx
double precision, dimension(Nx), intent(in) :: a,b
approx = fluxprime((a+b)*0.5) ! q'((a+b)/2)
g_LW = flux(a) + flux(b) - alpha*approx*(flux(b)-flux(a))
g_LW = g_LW*0.5
end function g_LW
subroutine Calcul_Lax_Wendroff(uLW)
double precision, dimension(Nx), intent(inout) :: uLW
double precision, dimension(Nx) :: uLW_P, uLW_M
! conditions de Neumann
uLW_P(1:Nx-1) = uLW(2:Nx)
uLW_P(Nx) = uLW(Nx)
uLW_M(1) = uLW(1)
uLW_M(2:Nx) = uLW(1:Nx-1)
! schema
uLW = uLW - alpha*(g_LW(uLW,uLW_P)-g_LW(uLW_M,uLW))
end subroutine Calcul_Lax_Wendroff
144
Solution
145
-0.2
0
0.2
0.4
0.6
0.8
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
'burgers030.dat' u 1:2'burgers030.dat' u 1: 4
Dissipation Numérique
Top Related