Vous êtes sur la page 1sur 336

Modélisation des Systèmes Multiphysiques

Philippe TRAORE 1
2
Qu’est-ce que la Modélisation des Systèmes Multiphysiques?

Pourquoi modélise-t-on ?
Les ingénieurs sont confrontés à un environnement technologique
mais aussi économique de plus en plus complexe.

Impératif à avoir des délais de conception réduits

Utilisation d’outils de conception sophistiqués utilisant des prototypes


virtuels.

Ces modèles convergent vers une solution optimale et fiable beaucoup


plus rapidement que les méthodes traditionnelles basées sur des
prototypes réels.

3
Qu’est-ce que la Modélisation des Systèmes Multiphysiques?

Que modélise-t-on ?

Un système est un agencement organisé de composants qui se


coordonnent pour assurer une fonction désirée.

Ex: avion, voiture, bateau, satellite, climatiseur, …

Ces systèmes évoluent dans un environnement multiphysique:


Mécanique, électronique,, thermodynamique, aérodynamique ,
hydrodynamique, chimique.

Le modèle recherché sera lui aussi multiphysique.

4
Qu’est-ce que la Modélisation des Systèmes Multiphysiques?

Comment modélise-t-on ?

Un modèle est une représentation abstraite et simplifié de la réalité


existante ou souhaitée (idéalisée).

Le système est représenté par un schéma-blocs où chaque bloc représente


un composant (ou sous-système) du système en question.

Chaque bloc est causal. C’est-à-dire qu’il a une entrée (la cause), une
sortie (l’effet) et une fonction de transfert qui relie l’entrée à la sortie.

Entrée fonction Sortie


(cause) (effet)
5
Entrée fonction Sortie
(cause) (effet)

La fonction qui relie l’entrée à la sortie est une relation mathématique


qui peut-être algébrique, logique, différentiel ou intégrale.

Cette fonction est parfois connue lorsque le phénomène physique


qu’elle modélise est lui aussi connu.
(loi de Newton , loi électrique, principe de conservation, loi de
transport,…)

Lorsque le phénomène physique n’est pas connu, des mesures


expérimentales, peuvent nous donner une représentation graphique de
l’évolution de la sortie en fonction de l’entrée.

6
Qu’est-ce que la Modélisation des Systèmes Multiphysiques ?
Lorsque la fonction est donnée par une équation différentielle ordinaire :
EDO (ou par un système d’équations différentielles) ou par une équation
aux dérivées partielles : EDP (ou par un système d’équations aux
dérivées partielles), une solution analytique est rarement disponible.

Il faut donc utiliser des méthodes de resolution issues des


Mathématiques Appliquées (Calculs Scientifiques et analyse numérique.
pour trouver une solution numérique approchée.

Un ingénieur calcul est quelqu'un qui applique la technologie


informatique de haute performance pour faire progresser l'état
des connaissances dans leurs disciplines.

Lui (ou elle) conçoit de nouvelles méthodes ou techniques pour


l'analyse.
Il est amené à développer de nouveaux outils logiciels pour des
7
applications scientifiques.
Un ingénieur calcul a la même façon de procéder que
l'expérimentateur. Il essaye de comprendre les phénomènes
physiques à partir d'expérimentations numériques.
Il essaye d'élaborer un modèle de prédiction.

Que signifie prédire ?


Connaissant l'état initial du système à un instant t0.
 (Les valeurs des variables définissant son état à un
instant t0 donné sont les conditions initiales)
Connaissant le modèle définissant son évolution temporelle
 (Equation différentielle ordinaire ou Equation aux
dérivées partielles, ou système EDO ou EDP)
Calculer l'état du système à un instant ultérieur t
 (Toutes les variables définissant son état à cet 8
instant ) t  t0
La Modélisation des Systèmes Multiphysique (MSM) est
fondamentalement multidisciplinaire.
Elle requière des connaissances en :
• Informatique
• Mathématiques appliquées
• En physique
Mécanique, Electromagnétisme, Electronique,
Thermodynamique, Transferts thermiques

9
C'est donc l'intersection de plusieurs disciplines

Physique Informatique

MSM

Mathématiques appliquées

La MSM est maintenant considérée comme la troisième méthodologie


de base complémentaire de la Théorie et de l’Expérience.

10
Super calculateurs

Tianhe-2: Rivière céleste est un supercalculateur situé à Guangzhou en Chine, à


l‘université nationale detechnologie de la défense. Premier au classement du TOP500.
Il est un assemblage muni de 32 000 prises Intel Ivy Bridge et de 48 000 Intel Xeon
Phi pour un total de 3 120 000 cœurs.
Sa puissance atteint les 33,86 pétaflops le classe premier au classement du TOP500.. Il
Le second atteint seulement 17 590 téraflops
Tianhe-2 a également produit des pics de 54 902,4 téraflops3.

Power: 17.8 MW
Consommation électrique
d’une ville de 25000 habitants

11
12
La MSM est toujours liée à la Simulation numérique.

La simulation numérique "remplit" l'intervalle entre la théorie et


l'expérience.

La simulation fournit un aperçu qualitative et quantitative pour de


nombreux phénomènes qui sont:
• trop complexes pour être appréhendés par des méthodes analytiques
• trop dangereux (ou impossible) à réaliser expérimentalement
• trop coûteux à réaliser expérimentalement .
• trop long à réaliser expérimentalement.

C'est souvent la seule alternative à l'expérience quand la théorie


ne fournit aucune réponse.
C'est-à-dire jamais dans un contexte industriel
13
MSM et CFD (Computational Fluid Dynamic)

Lorsque la MSM est appliquée dans un contexte de


Mécanique des fluides on parle de CFD (Computational Fluid Dynamic)
ou Mécanique des fluides numérique.

La mécanique des fluides intervient dans de très nombreux secteurs


Industriels :

14
Disciplines concernées par la CFD

Aéronautique

Combustion

Ecoulements géophysiques

Météorologie

Ecoulements diphasiques

Ingénierie automobile

Ingénierie

15
16
Calcul scientifique et mathématiques appliquées

Lorsqu'il n'est pas possible de trouver une solution analytique pour un


problème donné, on doit penser Calcul scientifique

Généralement quand on résoud un problème on doit faire face à


plusieurs sous-problèmes que l'on doit prendre en compte
avec des techniques spécifiques issues des mathématiques appliquées.
Les différents domaines peuvent être:

• Recherche des zéros d'une fonction


• Intégration
• Interpolation / extrapolation
• Equations différentielles ordinaires (EDO)
• Equations aux dérivées partielles (EDP)
• Algèbre linéaire
• Optimisation
17
• ….
Dans la première partie de ce cours nous commencerons par aborder les
concepts spécialement dédiées à la résolution des Equations aux
Dérivées Partielles par la méthode des Différences Finies.

Nous aborderons ensuite la méthode de choix utilisées dans les codes de


calculs en mécanique des fluides ou en transferts thermiques la méthode
des Volumes Finis.

18
Equations aux dérivées partielles
Concepts de base et définitions

La majorité des problèmes d'ingénierie est modélisée par un ensemble


d'équations aux dérivées partielles.

La théorie concernant les EDP (existence, unicité ) n'est pas aussi bien
développée que pour les EDO.

Quant une solution existe cette solution est si triviale qu'elle est inutile
d'un point de vue pratique ou industriel.

La plupart de ces équations sont du 1er ou du 2nd ordre. La forme générale


est:
 2u  2u  2u u u
a 2 b c 2 d  e  fu  g
x xy y x y
a, b, c, d, e, f et g peuvent être des fonctions de x et de y et
éventuellement de u. 20
L'ordre de l'équation est donné par sa dérivée la plus élevée.
Si a, b ou c sont différents de zéro l'équation est du second ordre
Si a=b=c=0 et d et e sont non nuls l'équation est du premier ordre
L'équation est non-linéaire si les coefficients a, b, c, d, e, f dépendent
de la variable u.

Si g=0 l'équation est dite homogène.

21
Solution

Une solution est une fonction u dépendant de x et de y qui vérifie


l'équation.

On peut interpréter la solution comme une surface dont les dérivées


partielles vérifient l'équation en tous points.
De même que pour les EDO il existe une infinité de solutions.
Une parmi elles est obtenue en imposant des conditions aux limites.

Contrairement aux EDO un nombre de conditions égale à l'ordre


de l'équation ne garantit pas l'unicité de la solution.

22
Suivant la valeur des coefficients a, b, c, on distingue 3 cas:

•   b 2
 4ac  0
L'équation est dite hyperbolique.
Un exemple de ce type d'équations est l'équation des "cordes vibrantes"

1  2u  2u
 2 0
c t
* 2
x

•   b  4ac  0
2

L'équation est dite parabolique.


Un exemple typique: "l'équation de la chaleur"
u  2u
 2  0
t x 23
•   b 2
 4ac  0

L'équation est dite elliptique.


Une équation fondamentale de ce type est: l'équation de Laplace
 2u  2u
 2 0
x 2
y
La nature (hyperbolique, parabolique ou elliptique) de ces équations
induit certaines propriétés spéciales pour la solution et le type de
méthodes ou de schémas utilisés pour les résoudre.

24
Méthodes de résolution

Les méthodes pour résoudre une EDP peuvent être classées en deux
groupes:
• Méthodes d' approximation d'équations où l’on cherche
la solution exacte d'une équation approchée.

• Méthodes d' approximation de solutions où l’on cherche


la solution approchée d'une équation exacte .

Dans le premier groupe on trouve la méthode des différences finies et


la méthode des volumes finis.

Dans le second nous avons la méthode des élements finis


et les méthodes spectrales.
25
Méthodes de discrétisation

Nous avons vu que pour résoudre une EDP il y avait 4 méthodes:

•Différences Finies
•Volumes Finis
•Eléments Finis
•Méthodes Spectrales

Chacune de ces méthodes a ses avantages et ses inconvénients comparées aux


autres.

Les critères de choix sont conduits d’abord par la complexité géométrique du


domaine. Selon cette complexité on peut choisir le type de maillage qui doit
être utilisé pour discrétiser le domaine.

Pour nous aider nous pouvons répondre aux questions suivantes:

26
• Peut on utiliser un maillage mono-bloc structuré?  (DF, VF, EF, S)
• Doit on utiliser un maillage multi-bloc ?  (DF, VF, EF)
• Doit on utiliser un maillage non-structuré ?  (VF, EF)

Lorsque plusieurs méthodes de discrétisation sont appropriées pour un problème


donné, le choix sera déterminé selon les contraintes:

• précision  (S sont plus précises que les autres


VF respecte mieux les principes de conservation)

• temps de calcul  (DF peuvent être très efficaces de ce point de vue


parce que facile à vectoriser ou parallèliser)

• coûts de développement (EF sont plus complexes à implémenter que DF et VF)

Ainsi toutes ces considérations doivent nous aider à choisir la méthode de


discrétisation la plus appropriée à notre problème.
27
La méthode des Différences finies
Introduction

La méthode des différences finies a été


introduite par Euler, mathématicien allemand
du 18ième siècle et père du calcul différentiel

Cette méthode, à cause de sa simplicité


de mise en œuvre était la
méthode de choix dans les années 60' et 70'.

Elle est encore largement utilisée pour une


large gamme de problèmes scientifiques ou
d’ingénierie.

29
Introduction

Mais elle a quelques limitations comparé à d'autres méthodes


comme les éléments finis, volumes finis ou méthodes spectrales.

30
Généralement les équations modèles ont des dérivées spatiales
et temporelles. On peut soit:

• Les approcher simultanément et résoudre les équations aux différences


résultantes.

•Approcher d'abord les dérivées spatiales et de cette façon produire


un système d'Equations Différentielles Ordinaires.
Les dérivées temporelles sont approchées ensuite conduisant à
l'application d'une méthode de résolution d'EDO.

Le concept des différences finies pour approcher les dérivées partielle


est présenté. Les différences finies peuvent être appliquée aux
dérivées spatiales ou temporelles.
L' accent dans ce chapitre est porté sur les dérivés spatiales.
31
Particularités et principes de base

• Le domaine physique est discretisé en un domaine de calcul que


nous appelons maillage ou grille. Les noeuds de ce maillage peuvent
être uniformément espacé ou pas.

• En chaque nœud, chaque dérivée est approchée par une expression


algébrique faisant référence ou impliquant les nœuds adjacents.
C'est ce que l'on appelle le processus de discrétisation de l'EDP.
• Un système d'équations algébriques est obtenu.

• Le système est résolu pour la variable dépendante

• La façon dont les dérivées sont discrétisées est appelé schéma.


De nombreux schémas existent selon l'ordre de la dérivée et
la précision attendue.
32
La façon de construire des schémas est basée soit sur
le développement en série de Taylor soit sur des méthodes
d’interpolation polynomiale

33
Maillage

Maillage 1D uniformément espacé

XL
Coordonnée h
 NI
X i  i h i  0, NI
34
Maillage 2D uniformément espacé

35
 Maillage 2D uniformément espacé

Maillage 3D uniformément espacé 

36
Développement en Série de Taylor

Connaissant la valeur de la fonction u au point x0, nous pouvons


déduire la valeur de cette fonction au point x0+h.

h u  h 2  2u  h 3  3u 
u ( x0  h )  u ( x0 )    2 
 3 
....
1! x  x0 2! x  x 3! x  x
0 0


hn  nu 
 n 
n 0 n !  x x
0

Notez que toutes les dérivées sont exprimées au point x0

En dépit du fait qu'ici notre fonction u ne dépende seulement que de la variable x


d
on utilise l'opérateur  mais nous devrions plutôt utiliser
x dx

37
Plus on prendra de termes dans la série plus précise sera l'approximation
de u ( x0  h )

Pour le traitement de nombreux problèmes il est commode


de prendre seulement les premiers termes de la série.
u 
u( x0  h )  u( x0 )  h   O ( h 2
)
x  x0

Le term O ( h 2 ) represente l'erreur du au fait que l'on a tronqué la série


après le second terme.

Ce terme est proportionel à h 2

38
Schémas aux différences finies 1D

De la précédente équation on peut déduire


u 
h   u ( x0  h )  u ( x 0 )  O ( h 2
)
x  x0
et u  u ( x0  h )  u ( x0 )
   O(h)
x  x0 h
C'est le schéma aux différences finies aval du premier ordre pour
la dérivée première.
Également nous pouvons définir le schéma amont du premier ordre
pour la dérivée première.
En substituant –h par h dans la série
on obtient: u  u ( x0 )  u ( x0  h )
   O (h )
x  x0 h
39
Si maintenant nous gardons les 3 premiers termes de la série
nous avons pour h et -h :
u  h 2  2u  (1)
u ( x0  h)  u ( x0 )  h   2 
 O ( h 3
)
x  x0 2 x  x
0

u  h 2  2u  (2)
u ( x0  h)  u ( x0 )  h   2 
 O ( h 3
)
x  x0 2 x  x
0

En faisant (1)-(2) on obtient:

u  u ( x0  h )  u ( x 0  h )
   O ( h 2
)
x  x0 2h

C'est le schéma aux différences finies centré du second ordre pour


la dérivée première.
40
En faisant (1)+(2) on obtient:

 2u  u( x0  h )  2u( x0 )  u ( x0  h )
2 
  O ( h 2
)
x  x h 2
0

C'est le schéma aux différences finies centré du second ordre pour


la dérivée seconde .

41
Schémas aux différences finies 1D

Dérivée première

u  u ( x0  h )  u ( x0 )  aval, 1er ordre


   O(h)
x  x0 h

u  u ( x0 )  u ( x0  h ) amont, 1er ordre


   O (h ) 
x  x0 h

u  u ( x0  h )  u ( x0  h ) centré, 2nd ordre


   O ( h 2
) 
x  x0 2h

Dérivée seconde

 2u  u ( x0  h )  2u ( x0 )  u ( x0  h ) centré, 2nd ordre


  O ( h 2
) 
x 2  x h2
0
42
Schémas aux différences finies 2D

h u  h 2  2u 
u ( x0  hx , y0 )  u ( x0 , y0 )    2 
 ....
1! x ( x0 , y0 ) 2! x ( x , y )
0 0


hn nu 
 n 
n 0 n ! x ( x , y
0 0)

h u  h 2  2u 
u ( x0 , y0  h y )  u ( x0 , y0 )    2 
 ....
1! y ( x0 , y0 ) 2! y ( x , y )
0 0

hn  nu 

 n 
n 0 n ! y ( x , y
0 0)

Comme précédemment nous pouvons faire les mêmes développements


en série ce qui conduit à: 43
Schémas aux différences finies 2D

Dérivées premières

u  u ( x0  hx , y0 )  u ( x0 , y0 )
   O ( hx )
x ( x0 , y0 ) hx

u  u ( x0 , y0  h y )  u ( x0 , y0 )
   O (hy )
y ( x0 , y0 ) hy

u  u ( x0 , y0 )  u( x0  hx , y0 )
   O ( hx )
x ( x0 , y0 ) hx

u  u ( x0 , y0 )  u ( x0 , y0  h y )
   O (hy )
y ( x0 , y0 ) hy
44
u  u ( x0  hx , y0 )  u ( x0  hx , y0 )
   O ( h 2
x)
x ( x0 , y0 ) 2 hx

u  u ( x0 , y0  h y )  u ( x0 , y0  h y )
   O ( h 2
y)
y ( x0 , y0 ) 2h y

Dérivées secondes

 2u  u ( x0  hx , y0 )  2u ( x0 , y0 )  u( x0  hx , y0 )
2 
  O ( h 2
x)
x ( x , y ) 2
hx
0 0

 2u  u( x0 , y0  hy )  2u( x0 , y0 )  u( x0 , y0  h y )
2 
  O ( h 2
y)
y ( x , y ) 2
hy
0 0

45
Notations

Lorsque l'on applique ces formules non plus au point (x0)


mais en n'importe quel point (xi):
xi  h  xi 1
u ( xi )  ui

On a:

u  ui 1  ui
   O (h )
x  i h
u  ui  ui 1
   O (h )
x i h

u  ui 1  ui 1  2 u  ui 1  2ui  ui 1
   O ( h 2
) 2 
  O ( h 2
)
x i 2h x i h 2
46
direction x : h  x
direction y : h  y
direction z : h  z

47
Schémas aux différences finies 2D

Dérivées premières
u  ui 1, j  ui , j u  ui , j 1  ui , j
   O ( y )
   O ( x ) y  i , j y
x  i , j x
u  ui , j  ui 1, j u  ui , j  ui , j 1
   O ( x )
   O ( y )
x i , j x y i , j y
u  ui 1, j  ui1, j ui , j 1  ui , j 1
   O ( x 2
) u 
x i , j 2x    O ( y 2
)
y i , j 2y
Dérivées secondes
 2u  ui 1, j  2ui , j  ui 1, j
2 
  O (  x 2
)
x i , j x 2

 2u  ui , j 1  2ui , j  ui , j 1
2 
  O ( y 2
)
y i , j y 2 48
Schémas aux différences finies 3D

Dérivées premières
u  ui , j ,k 1  ui , j ,k
   O ( z )
z  i , j ,k z
u  ui , j  ui , j ,k 1
   O ( z )
z i , j ,k z

u  ui , j ,k 1  ui , j ,k 1
   O ( z 2
)
z i , j ,k 2 z

Dérivées secondes
 2u  ui , j ,k 1  2ui , j ,k  ui , j ,k 1
2 
  O (  z 2
)
z i , j ,k z 2

49
Procédure générale de construction de nouveaux schémas

Nous commençons par écrire la dépendance voulue vis-à-vis


des nœuds choisis de la dérivée que l'on souhaite approcher

 u 
   aui 1  bui  cui 1 (1)
 x i

On écrit le développement en série de Taylor de ui 1 , ui , ui 1


autour du point "i"

 u    u  x   u  x   u 
2 2 3 3 
   a  ui  x     2 
  3 
 ....... 
 x i   x i 2  x i 3!  x i 
bui 
  u  x   u  x   u 
2 2 3 3 
c  ui  x     2 
  3 
 ....... 50
  x i 2  x i 3!  x i 
 u 
   ui ( a  b  c ) 
 x i
 u 
  (  a x  cx ) 
 x i
  2u  x 2  x 2   3u  x 3 x 3
 x 2  ( a 2  c 2 )   x 3  (  a 3!  c 3! )
 i  i

Nous identifions terme à terme ce qui conduit à:

1
a  b  c  0 a
 et 2x
  (  a  c ) x  1
 b0
a  c  0
 c  a
51
 u  1 1 ui1  ui1
   ui 1  ui 1 
 x i 2x 2x 2 x

Le terme   3
u    x 3
 x 3
 est le premier terme
3  
a c 
  x i  3! 3! 
négligé et c’est ce que l’on appelle l’erreur de troncature ET

En remplaçant les valeurs a, b et c dans ce terme nous avons :


x 2   3u 
ET  
6  x 3 i
A partir de l’expression de l’erreur de troncature ET on détermine
l’ordre du schéma.
l’ordre du schéma est la puissance de x dans ET
Ici l’ordre est P=2 52
Erreur de troncature d’un schéma

L’erreur de troncature d’un schéma est la partie du schéma qui


correspond à la partie de la série de Taylor qui a été négligée dans le
développement.
Dans la procédure générale expliquée précédemment le développement
de la série de Taylor conduit à:
 u 
   ui ( a  b  c) 
 x i
 u 
  ( ax  cx) 
 x i
  2 u   x 2 x 2    3u   x 3 x 3 
 2  a c    3   a c 
 x i  2 2   x i  3! 3! 
53
54
55
Application de la méthode des Différences finies à la résolution
d’équations aux dérivées partielles.

Differences Finies pour les équations Elliptiques

Equation de Poisson 1D

L
 2U
 f ( x)
x 2
U0 U1 U2 U3 U4 U5 U6 U7 U8 UNI
L
h h
NI

Points de conditions aux limites

Points inconnus
56
Un schéma centré du second ordre donne *

U i1  2U i  U i1
2
 fi o( h 2 )
h

f i  f ( xi ) xi  ih

U i1  2U i , j  U i1  h 2 fi

Ce qui peut être écrit sous la forme d’un système linéaire du type

57
. 
. 
 
. 
 
 . 
. 
0  2 
 h fi1 
  2 
A= ad c B  h fi
 
 h 2 fi1 
0  
. 
. 
 
. 
a  c 1 . 
 
d  2 . 
 58

Différences finies pour les équations elliptiques

Equation de Poisson 2D

 2U  2U
 2  f ( x, y )
x 2
y

Points de conditions aux limites

Points inconnus

59
Un schéma centré du second ordre donne *

U i 1, j  2U i , j  U i 1, j U i , j 1  2U i , j  U i , j 1
  fi , j o( h 2 )
h2 h2

f i , j  f ( xi , y j )

U i , j 1  U i 1, j  4U i , j  U i 1, j  U i , j 1  h 2 f i , j (1)

Ce qui peut être écrit sous la forme d’un système linéaire du type

60
* Pour simplifier on utilise un maillage régulier dans les deux directions
.  . 
.  . 
   
 U i , j 1   h 2 f i , j 1 
   
.  . 
.  . 
   2 
 U i 1, j   h f i 1, j 
     2 
X  U i , j  A= B   h fi, j 
U   h2 f 
 i 1, j   i 1, j

.  . 
   
 .  . 
 U i , j 1   h 2 f i , j 1 
  e=a=c=f=1  
.  d=-4 . 
.  . 
   61 
Maillage irrégulier dans les deux directions
LY y
LX LY
x  ; y 
NI NJ
x
LX

U i1, j  2U i , j  U i1, j U i , j 1  2U i , j  U i , j 1
  fi , j o ( x 2 , y 2 )
x 2 y 2

f i , j  f ( xi , y j )

1 1  2 2  1 1
U i , j 1  2 U i 1, j   2  2 U i , j  2 U i 1, j  2 U i , j 1  fi , j
y 2
x  x y  x y

62
La structure de la matrice est tri-diagonale en 1D
penta-diagonale en 2D
hepta-diagonale en 3D

Ca dépend de plusieurs paramètres

• de la façon de numéroter les noeuds


• de l’ordre des schémas utilisés lors de la discrétisation

• Le choix le plus évident pour numéroter les noeuds est d’utiliser la


caractéristique structurée du maillage en différences finies.

63
7 8 9

4 5 6

1 2 3

 u1 
u 
 2
 u3 
 
 u4 
 u5 
 
 u6 
u 
 7  64
 u9 
3 6 9

2 5 8

1 4 7

 u1 
u 
 2
 u3 
 
 u4 
 u5 
 
 u6 
u 
 7  65
 u9 
En 1D
• Un schéma centré du second ordre donnera lieu à une
matrice tri-diagonale.
 2U  U i 1, j  2U i , j  U i 1, j
2 

x i , j x 2

•Un schéma centré du quatrième ordre donnera lieu à une


matrice penta-diagonale.

 2U  U i  2, j  16U i 1, j  30U i , j  16U i 1, j  U i 2, j


2 

x i , j 12 x 2

En 3D

•Un schéma centré du quatrième ordre donnera lieu à une


à une matrice 13-diagonale. 66
Application de la méthode des Différences finies aux équations
aux dérivées partielles évolutives

Prenons par exemple l’équation de la chaleur instationaire 1D.


La température T est une fonction de x et de t (le temps)
T  2T (1)
T  T ( x, t )  2
t x

Notion de schéma en temps Explicite/Implicite

Pour les EDP lorsque l’inconnue dépend du temps, il faut introduire


la notion de schéma en temps.

le schéma en temps est le schéma qui indique la façon dont la solution


au pas de temps n+1 est liée à la solution au pas de temps n.

67
Une équation aux dérivées partielles peut faire intervenir des dérivées
spatiales, en générale:
 2
; 2 1D
x x
 2  2
; 2; ; 2 2D
x x y y
 2  2  2
; 2; ; 2; ; 2 3D
x x y y z z


Et des dérivées temporelles, en général:
t

68
 2
En 1D s’il n’y a que des dérivée spatiales ; 2;
x x

Il s’agira de trouver la solution i le long d’un segment (axe x)

x
i= 0 i=1 i=2 i=3 i=4 i=5 i=6 i=NI

pour tous les points i de 1 à NI-1. Le comportement de la solution sur les deux
points i=0 et i=NI est supposé être connu car ce sont les conditions aux limites.

69

Si nous avons de plus une dérivée temporelle
t
il faudra non seulement trouver la solution i pour tous les points i mais de
plus trouver la solution au cours du temps c’est-à-dire le long de l’axe t pour

tous les n . La fonction inconnue est alors notée: i
n

Le comportement de la solution à l’instant t0 est connu. C’est la condition


initiale.

70
t

NTMAX
0
 1
NTMAX
 NTMAX
2
 3
NTMAX 4NTMAX 5NTMAX 6NTMAX NINTMAX
n=NTMAX

0
6
 1
6
 6
2
 6
3 6
4
 6
5  6
6
NI6
n=6
 5
0
 1
5
 5
2
 5
3 5
4
55 65 NI5
n=5
 4
0
 1
4
 4
2
 4
3  4
4
54 64 NI4
n=4
 3
0
 1
3
 3
2
 3
3 3
4
53 63 NI3
n=3
 2
0
 1
2
 2
2
 2
3 2
4
 2
5  2
6
NI2
n=2
 1
0
 1
1  1
2
 1
3  1
4
51 61 NI
1

n=1
 0
0
10  0
2
 0
3
40 50 60 NI0
n=0 x
i= 0 i=1 i=2 i=3 i=4 i=5 i=6 i=NI

Point de Condition initiale Point où on cherche la solution 71


Point de Condition à la limite
t

 n 1
i 1  i
n 1 in11
tn+1
x
t in
tn
x
t Xi-1 Xi Xi+1
tn-1
x x

x
i-1 i i+1

Point de Condition initiale


tn= nt
Point de Condition à la limite
Xi = i x
72
Point où on cherche la solution
Configuration 2D
t y

t3 x
y
t

t2
y x
Point de Condition à la limite
t
Point où on cherche la solution
t1
x
y
t y
Point de Condition initiale
t0
x x
73
Il y a deux caractéristiques pour un schéma en temps:
• sa nature (explicite/implicite)
• son ordre qui caractérise sa précision

Pour un schéma explicite, la solution au pas de temps n+1 depend


seulement de la solution aux pas de temps n, n-1,n-2,…..

Pour un schéma implicite la solution au pas de temps n+1 depend


de la solution aux pas de temps n, n-1,n-2,…..mais aussi au temps n+1

74
n
n 1 T 
T  T  t
n
  o ( t 2
)
t 
n
T  T n1  T n
   o( t )  dérivée première aval
t  t
Forward Euler Scheme

n
n 1 T 
T  T  tn
  o ( t 2
)
t 
n
T  T n  T n1
   o(t )  dérivée première amont
t  t
Backward Euler Scheme

75
Forward Euler

Appliquons les formules établies pour les opérateurs de dérivée


première et seconde.
n n
T  T 2

  2 
t i x i

n
T  Ti n1  Ti n
   dérivée première aval O ( t )
t i t
n
 T  Ti n1  2Ti n  Ti n1
2
 dérivée seconde centrée O( x2 )
2 

x i x2

76
Ti n 1  Ti n Ti n1  2Ti n  Ti n1

t x2
n1 n  t  n 2t  n  t 
Ti  Ti 1  2   Ti 1  2 
 Ti1  2  (2)
 x   x   x 

Le schéma d’Euler aval (Forward Euler Scheme) conduit à une


formulation explicite.

77
Backward Euler

Appliquons les formules établies pour les opérateurs de dérivée


première et seconde.
n n
T  T 2

  2 
t i x i
n
T  Ti n  Ti n1  dérivée première amont O ( t )
 
t i t
n
 T  Tin1  2Ti n  Ti n1
2

2 
  dérivée seconde centrée O( x 2 )
x i x2

Ti  Ti
n n 1
T  2Ti  T
n n n
Ti n1  Ti n Tin11  2Ti n1  Ti n11
 i 1 i 1  
t x2 t x2

78
 t   2t  n 1  t 
Tin11   2   Ti n1 1  2 
 Ti 1   2 
 Ti
n
(3)
 x   x   x 

Le schéma d’Euler amont (Backward Euler Scheme) conduit à une


formulation implicite.

Les schémas implicites sont connus pour être


inconditionnellement stables
Formulation matricielle

L’équation (3) écrite pour tous points "i" conduit à un système linéaire
de la forme:
 n1  n
AX  b

79

 T1n1   T1n 
 n1   n 
 T2   T2 
.  . 
   
n 1
 Ti    Ti 
n

   
.   . 
.  . 
 n1   n 
 TNI 1   TNI 1 
   
 n1 n
A X b
les coefficients a, d et c sont maintenant:
 t 
a  c   2 
 x 
 2t 
d  1  2 
80
  x 
Equation d’advection pure

       
n n
u 0   u   0
t x  t i  x i

Traitement explicite 

Forward Euler

 
n 1 n
in1   n
i
u i i 1
0 o(t , x 2 )
t 2x

u t n

i
n 1
 
i
n

2x

i 1   in1 
81
Traitement implicite 

Backward Euler

 
n 1 n
in11   n1
i
u i i 1
 0 o( t , x 2 )
t 2x

u t n1 ut n1


i
n 1
 i1  i 1  in
2x 2x

C n1 C n1
 i
n 1
 i1   i 1  in
2 2
82
C n1 C n1
i 1  i  i 1  in
n 1

2 2
 n 1  n
AX  B

 1n1   1n 
   
.  . 
  n1  . 
 n1  i 1
 n  n 
X   i n 1 B   i 
A=  n1  . 
 i 1   
.  . 
 n1   n 
 
 NI 1   NI 1 

C C
avec a d 1 c
2 2 83
Résolution

La résolution est un peu plus compliquée dans la mesure


où il est maintenant requis de devoir inverser la matrice A(*):
 n1  n  n1 
AX  b  X  A b 1 n
: calcul de A-1

for n=0 to NMAX


 n1 
 X  A b  résolution du système linéaire
1 n

 Stockage  n1
du résultat au pas de temps
 b Xn
 mise à jour du second membre
next n

(*)Il existe un grand nombre de méthodes dédiées à l’inversion des matrices.


Pratiquement en fait on inverse jamais la matrice car c’est trop cher
84
mais on résoud le système linéaire avec des méthodes spécifiques.
Selon
 la définition donnée à ET, cela veut dire que la solution exacte
T ( xi ) ne satisfait pas l’équation aux différences finies discrète (EDF)
mais une équation aux différences modifiée incluant l’erreur de
troncature.
L’ ET peut être vue comme le résidu de l’équation discrète quand on
utilise l’équation exacte dans son évaluation.

85
Consistance, Stabilité, Convergence

Consistance

Un schéma numérique est dit consistant si son erreur de troncature


tend vers zero quand tous les pas de discrétisation t , x, y,..
tendent vers zero.
lim
x,t 0
 ET   0
T  2
T
Nous avions vu que pour l’équation de la chaleur  2
n
t x n1
x 2   4T  t   2T 
L’erreur de toncature était: ET    4   2 
12  x i 2  t i

Les schémas utilisés pour résoudre cette EDP, qui conduisent à cette ET
sont consistants.
86
Cette idée de consistance peut être vue comme une “fiabilité locale“
entre l’équation discrete et l’EDP.

Si l’on n’approxime pas correctement le problème continu on aura aucune


chance d’obtenir la convergence de ce schéma.

87
Stabilité
Cette notion est intimement liée avec celle de convergence

Quand l’EDP implique une description temporelle (cad. une dérivée


temporelle cette notion prend tout son sens.

La stabilité numérique est donc un concept spécifique aux problèmes


d’évolution.

Qu’est ce qui garantit que le dernier pas de temps de calcul ( n  1)  n


s’effectuera dans des conditions similaires au pas de temps
de calcul 1  2 ?

88
La différence majeure entre ces deux situations est que le dernier pas
peut cumuler toutes les erreurs de discrétisation des pas de temps
précédents.

Cette réalité nécessite une condition globale certifiant qu’au cours


du temps l’évolution de la solution numérique restera proche
de la solution exacte.

Le fait pour la solution numérique d’être proche de la solution exacte


localement est garanti par la consistance.

Au cours de l’évolution temporelle cet aspect est garanti par la stabilité

89
Un schéma est stable si la solution numérique reste bornée
durant l’évolution temporelle.

Pour une équation de transport (convection-diffusion)


sans terme source la solution est bornée entre le min et
le max de la condition initiale.

Généralement le fait pour une solution numérique d’être non bornée


est imputé à l’accumulation des erreurs ou/et à l’oscillation
de la solution.

90
00 1 x
Un schéma numérique est stable si les erreurs, quelqu’en soient les
origines (troncature, erreurs d’arrondi,…) ne croissent pas à chaque pas
de temps du problème séquentiel.

La stabilité d’un schéma est plus difficile à établir que la consistence,


mais quand c’est possible elle est généralement exprimée par une
condition reliant le pas de temps t au pas d’espace x

91
Convergence

Un schéma est convergent si la différence Ti  T ( xi )
tend vers zéro lorsque les pas de discrétisation tendent vers zéro.

Comme générallement on ne dispose pas de la solution exacte T ( xi )
c’est assez difficile à établir ainsi.
Cela étant le théorème de Lax nous dit:

Theorem de Lax
“Pour un problème linéaire, la consistance et la stabilité sont nécessaires
et suffisants pour assurer la convergence."

Ainsi si notre schéma numérique est consistant et stable on peut être


sûr qu’il converge.
92
Analyse de stabilité de Von Neumann
Cette méthode d’analyse vient de l’analyse spectrale.
Soient  l’ erreur entre la solution exacte  la solution numérique 

 et  satisfont l’équation discrète aux différences finies

in1  in  in1  2in  in1  (1)


  
t  x 2


et comme     

on a:  in1   in   in1  2 in   in1  (2)


  
t  x 2

93
La solution sera stable si et seulement si  i décroit lorsque la solution
progresse dans le temps.
En d’autres termes on doit vérifier que:

 in 1
1 (3)
i n

Considérant que la solution d’un problème de diffusion transitoire est


souvent exponentiel en temps et que sa dépendance temporelle obéit à
l’expression d’une série de Fourrier, il est raisonnable de supposer
qu’il en sera de même pour l’erreur.

 (t , x)  e t
 e
m1
jkm x

Où les k m sont les nombres d’ondes, j  1 et  peut être réel ou complexe


94
 in  e t e jkx i

 n 1
e  ( t t )
e jkxi  in1 e ( t t ) e jkx i
 t
i   t jkx
 e G
i n
e e i

 n
i 1 e et jk ( xi x )

 in1  e t e jk ( x x )
i
Condition de stabilité G 1

 in1   in   in1  2 in   in1 


  
t  x 2

e ( t t ) e jkxi  e t e jkxi  e t e jk ( xi x )  2e t e jkxi  e t e jk ( xi x ) 
  
t   x 2

e t e jkxi  et  1  e jk x  2  e  jk x 
 e t e jkxi  
t   x 2

95
et  1 e jk x  2  e  jk x

t (x) 2

 t
ou e  1 cos( k  x )  1 4sin 2
(k x / 2) comme e j  cos   j sin 
 2  
t ( x) 2 ( x ) 2

 t 4t
ainsi e  1 sin 2
( k x / 2)  G
(x) 2

où G est le facteur d’amplification

96
e ( t t ) e jkxi t
L’équation (3)   t jkxi
 1  e 1
e e

or 4t 4t
1 sin (k x / 2)  1 
2

(x) 2
(x) 2

4t
ainsi G  1  1  G  1  1  1  1
( x ) 2

Ce qui conduit à la condition de stabilité suivante:


t 1

(x) 2
2

(x) 2
t 
2 97
 
Equation d’advection pure u 0
t x
in1  in  in  in1 
Schéma explicite amont: u  0
t  x 

e ( t t ) e jkxi  e t e jkxi  e t e jkxi  e t e jk ( xi x ) 


u  0
t  x 

et  1 1  e jk x 
u  0
t  x 

u t
et
 1
x
1 e  jk x

98
et  1  C 1  e  jk x 

et  1  C 1   cos( k x)  j sin(k x ) 

e t
 1  C 1  cos(k x)  j sin(k x) 
t
e  1  C  C cos( k x)  j (C sin(k x ))
t 2
 1  C  C cos(k x)   C 2 sin 2 ( k x )
2
G e2

G  1  C   C 2 cos 2 (k x)  C 2 sin 2 (k x)


2 2

 2(1  C )C cos(k x )
99
G  1  C   C 2  2(1  C )C cos(k x)
2 2

G 2  1  C 2  2C  C 2  2(C  C 2 ) cos(k x)

G 2  1  2(C  C 2 )  cos(k x)  1


k x  
On souhaite montrer que G  1  G2  1

 1  2(C  C 2 )  cos( )  1  1
 2(C  C )  cos( )  1  0
2

100
2(C  C 2 )  cos( )  1  0

C  C2  0 C  C2  0  C 1
cos( )  1  0 impossible cos( )  1  0

La condition de stabilité associée à G  1 est C 1

101

Le schéma spatial explicite, amont est conditionellement i n
  n
i 1

 x 
stable  
u t x
La condition de stabilité est: C   1 soit t 
x u

Les schémas spatiaux explicites, centré et aval  in1  in1   in1  in 
 2x   x 
sont inconditionellement instables    

Autrement dit ils sont instables tout le temps c’est à dire t

  n 1
Les schémas spatiaux implicites, centré, amont ou aval i 1   n1
i 1

 2 x 
 in1  in11   in11  in1   
   
 x   x 
sont inconditionellement stables 102
Autrement dit ils sont stables tout le temps c’est à dire quelque soit la
valeur de t
Implémentation des conditions aux limites

EDP ( ) / 
Conditions aux limites / i  4

 1   2

 3
Qu’est ce qui rend la solution d’une EDP unique?
les conditions aux limites !
Une EDP ne peut être résolue sans la spécification de la façon
dont la solution se comporte sur les frontières.

Des précautions doivent être prises pour l’implémentation de ces


conditions aux limites.
103
En 1D on doit spécifier des CL
sur les deux noeuds appartenant à
chaque noeuds frontière.

En 2D on doit spécifier des CL En 3D on doit spécifier des CL


sur les noeuds appartenant à sur les noeuds appartenant à
chaque segment frontière chaque surface frontière.

104
Type de conditions aux limites

0 1 2 3 4 NI

Dirichlet Neumann homogène Neumann non-homogène


0  a    
 0   a
x 0 x 0
NI  b
   
 0   b
x  NI x  NI
Robin Type mix
    n
a0  b   c a0 ( x0 )  a1 ( x0 )  .....  an n ( x0 )....   a
x 0 x x
    n
aNI  b   c a0 ( x0 )  a1 ( x N )  .....  an n ( x N )....   b
x  NI x x 105
Implémentation des conditions aux limites

Par simplicité on raisonnera en 1D

 ( x)  f ( x) 0  x  1 i 1  2i  i 1
 f i (1) 1  i  n  1
x 2

Points i=2 à n-2 suivent equation (1)

Points i=1 et i=n-1 nécessitent un traitement special.


Ce sont les 2 points concernés par les conditions aux limites.
Ils vérifient l’équation (1) mais un traitement doit être appliqué.
106
Conditions de Dirichlet

0  a NI  b
a  21  2
Equation (1) écrite pour i=1 conduit à:  f1
x 2

 21  2  f1x 2  a

Écrite pour i=n-1 conduit à NI 2  2NI 1  b  f NI 1


x 2


 NI 2  2 NI 1  f NI 1 x 2
 b

107
Le système linéaire peut être ré-organisé de la façon suivante.

 2 1 0 0   1   x 2 f1  a 
 1 2 1     
     
 0 0  *  i    x 2 f i 
     
 1 2 1     
 0 0 1 2   NI 1   x 2 f NI 1  b 

La structure de la matrice ne change pas, seul le second membre


a changé.

108
Conditions de Neumann non-homogène

   
  a   b
x 0 x  NI
Le problème maintenant est que l’on ne dispose pas de valeur pour 0
ni pour NI comme dans le cas de Dirichlet.

Ainsi on doit "extraire" ces valeurs de la CL

Pour se faire, on doit discrétiser aussi la CL.


Comme le schéma utilisé pour discrétiser l’EDP des “ points intérieurs“
est du 2nd ordre, on a la possibilité d’utiliser un schéma au 1er ordre ou
au 2nd ordre.

109
1er ordre
1er ordre    
  a   b
x 0 x  NI
  1  0
aval    a  0  1   a x
x 0 x
  NI  NI 1  NI  NI 1   b x
amont    b
x  NI x

L’équation (1) écrite pour i=1 0  21  2


 f1
avec la valeur 0  1   a  x x 2

conduit à:  1  2  f1x 2   a x

L’équation (1) écrite pour i=n-1 NI 2  2NI 1  NI  f


NI 1
avec la valeur NI  NI 1   b x x 2
conduit à:    NI 1   NI  2  f NI 1 x 2
  b x
110
Finalement le système linéaire peut maintenant être ré-organisé

 1 1 0 0   1   x 2 f1   a x 
 1 2     
1
     
0 0  *  i    x 2 f i 
     
 1 2 1     
0 0 1 1  NI 1   x 2 f NI 1   b x 

111
Résumé et commentaires

• CL Dirichlet ne change pas la structure de la matrice.

• CL Neumann si !

• Il est conseillé d’utiliser un schéma du même ordre pour


discretiser la CL que celui utilisé pour discrétiser l’EDP sur les
“points intérieurs"

112
La méthode des Volumes finis

 maillages cartésiens othogonaux


Introduction, definitions, caractéristiques

La méthode des volumes finis


est une méthode relativement
nouvelle dans la mesure où elle
a été introduite par Patankar
un chercheur indien en 1980.

114
Introduction, definitions, caractéristiques

Cette méthode est devenue très populaire en CFD en raison de deux


avantages majeurs sur les autres méthodes de discretisation.

• premièrement elle assure que les équations discrètes issues de la


mécanique des fluides (basées sur les principes de conservation, masse
quantité de mouvement, énergie) sont toujours conservatives.

Alors que cette propriété peut en général être obtenue en


Différences Finies elle l’est naturellement en Volumes Finis.

115
• Deuxièmement VF est particulièrement bien adaptée aux géométries
complexes, ce que les Différences Finies ne peuvent pas faire.

DF pour des géométries modérément complexes va nécessiter une


transformation de coordonnées pour “switcher” de l’espace physique
(fait d’un maillage curviligne) vers un domaine de calcul (correspondant
à un maillage orthogonal cartésien).

VF est capable de gérer des EDP dans des géométrie très complexes
sans aucune transformation qui serait de toute façon irréalisable.

Écoulement autour d’un


avion complet.

116
De ce point de vue VF est très proche de la méthode des éléments finis,
mais à l’avantage d’être capable de mixer des éléments de différentes
topologies très facilement contrairement aux EF.

VF peut être appliqué autant sur des maillages structurés que


non-structurés.

117
Types de configuration

La méthode des Volumes Finis est une méthode de type intégrale.


Le principe de base est que l’on intègre l’EDP sur ce que l’on appelle
volume de contrôle ou cellule.
Aux centres de ces volumes de controle on définit les nœuds

Il y a 2 types de configuration pour la localisation des nœuds.

Cell centred

Les volumes de contrôle sont définis par le maillage, les


nœuds sont juste placés au centre de ces volumes de contrôle.
118
Node centered

Les noeuds sont localisés à l’intersection des génératrices.


Puis on définit le volume de contrôle autour de chaque nœuds
en plaçant les faces du volume au milieu de 2 nœuds.

119
Formes des volumes de contrôle

Segment en 1D

Surface en 2D

Quadrilatère 

Volume en 3 D

Hexaèdre (6)  120


Principes de base pour l’intégration
Formules d’intégration

La méthode des volumes finis est une méthode intégrale.


On intègre l’EDP sur chaque volume de contrôle.

Dans un volume ou sur une surface, la fonction intégrée f


est constant et sa valeur est prise au centre du volume
ou au centre de la surface.
2nd ordre 
Vp
fdv  f pV p

2nd ordre
 Se
fds  f e Se

1
2nd ordre  fds   f se  f ne  Se
Se 2
1
3thr ordre  fds   f ne  4 f e  f se  Se
Se 6 121
Transformation des intégrales de volume
Théorème de Green-Ostrogradsky

La methode des volumes finis est particulièrement bien adaptée


aux EDP écrites sous forme conservative.

Forme non-conservative
   
  u .     S
 t 

Forme conservative

122
Théorème de Green-Ostrogradsky

Le théorème de Green-Ostrogradsky permet de transformer une intégrale de volume


en intégrale de surface.

soit  une fonction scalaire




VP
   n ds
S
L’opérateur Nabla est le gradient


soit V une fonction vectorielle
  
  V dv   V  n ds
VP S
L’opérateur Nabla est la divergence

soit  une fonction tensorielle



   dv    n ds
VP S
L’opérateur Nabla est la divergence

123
S est la surface qui enveloppe le volume VP est la normale sortante à cette surface.
 (  ) 
Application à l’équation de transport      u         S
t

  
     u dv    u   n ds
VP S


      ds
VP
     dv   
S
 n

124
Volumes de contrôle et surfaces

En 1D VP est un segment et S 2 points

Sw  1
VP Se  1

En 2D VP est une surface et S 4 segments.

VP
S  S w  Se  S s  S n 125
Volumes de contrôle et surfaces

S est la surface qui enveloppe le volume v

En 3D VP est un volume réel et S une surface réelle composée


de 6 surfaces

VP S  S w  S e  S s  S n  Sb  St
126
Equation de transport 2D

Le model pour l’équation de transport est:


 (  ) 
     u         S (1)
t


   terme temporel
t

    u  terme convectif

       terme diffusif

S terme source

127
Equation de transport 2D

 (  ) 
 dv       u  dv        dv   S dv
VP
t Vp VP (1) VP

 (  )   
 dv     u   nds       nds   S dv
Vp
t S S Vp

 (  )
     S dv
C D
dv F F
VP
t VP
 
F     u   nds
C

S

F D       nds
S

128
Discrétisation du terme diffusif

Terme diffusif      

Flux Diffusif

 
F  
D
S
    n ds        n ds
k n ,e , w, s Sk

 
k  n ,e , w , s
  k  nk Sk 
 
   e  ne Se    w  nw S w
 
   n  nn Sn     s  ns S s

129
Métrique des maillages cartésiens 

A cette étape nous devons prendre en compte la métrique.

Maillage équidistant

S w  S e  y
et S s  Sn  x
VP  xy

     
  w  nw     e  ne  
x  w x e
     
  s  ns     n  nn 
y  s y n 130
Métrique des maillages cartésiens 

y n

y
x w
x
y
e

x

 xw  x  xe  x  ys  y  yn  y
S w  y Se  y S s  x S n  x
V p  xy
131
Schéma centré d’ordre 2 pour une dérivée 1ère

  N  P
  P  W  
  y  n  yn
x  w  xw

x w

y
  E  P
n

 
x  e  xe
  P  S
 
y  s  ys
S 132
Ainsi avec la métrique spécifiée on obtient:

 E   P   P  W 
F  e 
D
 y   w   y 
 x   x 
 e   w 
 N  P    P  S 
n  x   s  x
  y    y 
 n   s 

F D  De E  P   Dw W  P   Dn N  P   Ds S  P 

 w y  e y
Dw  De 
x w
x e

 s x  s x
Ds  Dn 
y y
s s
133
Discrétisation du terme convectif

Terme convectif  u

Flux Convectif

   
F C     u   n ds 
S
    u   n ds
k n ,e , w ,s Sk
 
 
k  n ,e ,w ,s
  u k  nk Sk
 
k  n ,e ,w ,s
m kk

 m nn  m ee  m ww  m ss

 
m k   k uk  nk S k
est le flux massique à travers la surface Sk
134
Discrétisation du terme convectif

Notons que dans le flux convectif nous avons


besoin de  aux centres des faces "k“.

Le jeux est alors d’exprimer ces valeurs k en terme de valeurs nodales:


P ,K si on ne veut pas introduire d’autres inconnues.

C’est le propos de ce que l’on appelle les “schémas d’interpolation"

135
Schémas d’interpolation pour le terme convectif

La discrétisation du terme convectif nous a conduit à:

F C  m ww  m ee  m ss  m nn

L’idée est donc de fournir un moyen de calculer les valeurs aux


faces k en fonction des valeurs aux noeuds: K

Il existe de nombreux schémas pour cela (autour d’une trentaine….)

Nous parlerons des plus fréquemment utilisés.

136
Schéma centré

Le schéma le plus simple et le plus évident consiste à faire la moyenne entre


les valeurs aux noeuds E et P pour évaluer la valeur en "e“ de telle sorte:

W  P E  P
w  e 
2 2

Lorsque le maillage est non-uniforme


w  W  (1   )P
e  E  (1   )P
d1 e

d1  d 2 P
d1 d2
E 137
Schéma centré

 Ce schéma est facile à implémenter, il est précis au 2nd ordre et a peu de


diffusion numérique .

 Mais il est instable lorsque Pee  2 . Dans ce cas on peut noter des
oscillations numériques indésirables sur la solution.
La consequence est que ce schema n’est pas borné.

Pe est le nombre de Peclet

 Ce schéma est “aveugle” à la direction de l’écoulement. Il ne possède pas


la propriété de transportivité.

138
Schéma amont du 1er ordre

Ce schéma tient compte de la direction de l’écoulement pour déterminer


la valeur de  au centre des faces.
On dit qu’il vérifie la condition de transportivité.

w  W if uw  0 e  P if ue  0
 P if uw  0  E if ue  0

139
Schéma amont du 1er ordre

 Ce schéma a l’inconvénient majeur d’être du 1er ordre.

 Il est moins précis que le schéma centré pour le même nombre de


points de maillages.

 Ce schéma est aussi très diffusif comparé au schéma centré. Ce peut être
vu comme un point négatif mais au contraire c’est parfois salvateur
car la diffusion numérique a tendance à stabiliser le processus de
convergence vers la solution.

140
Schéma amont du 1er ordre

Ainsi dans certaines configurations d’écoulement difficiles l’emploi


du schéma amont peut s’avérer être un très bon choix grâce à sa
propension à pouvoir absorber les instabillités et les oscillations
numériques.

Dans certains cas, ce peut être la seule façon d’atteindre la convergence


là où le schéma centré causera la divergence de la solution.
Cependant c’est un schéma qui présente des limitations pour les
écoulements ayant des recirculations même en utilisant des maillages
très fins.

141
Oscillation numérique, diffusion et dispersion


1
1

0
0 0 1x
0 1x

Solution exacte Effet de la diffusion Effet de la dispersion


oscillations numériques,
over and under shoot

LR
LR
Longueur de réattachement

schéma non diffusif schéma plus diffusif


142
Contrôle de la diffusion numérique

Convection d’un créneau en 2D avec une vitesse à 45°


Influence de l’ordre du schema.

143
C  W Solution exacte

E  W Solution numérique schéma centré

Solution numérique schéma amont 1er ordre

Comparison solution exacte et solution numérique pour les schémas centré et amont
Schéma hybride

Le schéma hybride essaye de tirer avantage du schéma précédent.


e  P if Pee  2 w  W if Pew  2
1 1
 (E  P ) if Pee  2  (W  P ) if Pew  2
2 2
Ce schéma est du 1er ordre
Sa popularité vient de sa propension à gommer les oscillations numériques
même pour de large nombre de Peclet.

En fait pour être précis, le schéma Hybride se comporte exactement comme le schéma
centré lorsque Pei  2

et lorsque Pei  2 il se comporte comme une sorte de schéma amont modifié.

145
Schéma exponentiel

Ce schéma provient de la solution analytique de l’équation de convection-diffusion 1D


stationnaire. On s’en sert pour calculer la valeur de  aux centre des faces.

exp( Pee )  1 exp( Pew )  1


e  P  E  P  w  W  P  W 
exp( Pe )  1 exp( Pe )  1

U 0 L
Pe est ici le nombre de Peclet : Pe 

Schéma du 1er ordre

146
Schéma power law

Ce schéma est en fait une approximation du précédent


e  (1   e )E   eP où l’exponentiel est remplacée par une loi puissance.
w  (1   w )P   wW
5 Schéma du 1er ordre
 Pei 
 1  10 
i   
Pei

147
Ce schéma est du 3ième ordre et a peu de diffusion numérique ce qui en fait son plus
grand attrait.

Mais comme les autres schémas d’ordre élevé, la contrepartie négative est que des
oscillations numériques peuvent apparaître là où de forts gradients de la solution
sont localisés dans le domaine ou dans les zones où le Péclet est élevé.

Quoiqu’il en soit l’amplitude de ces oscillations indésirables sont relativement faibles


mais cela donne quand même naissance à des over-shoots ou under-shoots qui
dégradent la solution et peut la faire diverger.

148
Propriétés des schémas

149
Discrétisation du terme temporel

Terme temporel  (  )
t
n
 (  )   (  ) 

VP
t
dv  
 t  P
 Vp

150
Discrétisation du terme temporel

 (  ) 
     u         S
t
 (  )
 ( )
t

( )            u   S
( )
Le terme temporel ainsi que la fonction sont évalués au point P
et à l’instant n
n
  (  ) 
   ( ) n
P
  t P n
  (  ) 
On choisit un schéma temporel pour évaluer le terme :  
 t  P

151
Discrétisation du terme temporel

schéma d’Euler aval 1er ordre : Forward Euler scheme


n
  (  ) 
   ( ) n
P
 t  P

  n1   n 
 P P
  ( ) nP
 t 
 
Ce schéma en temps est explicite et d’ordre 1. En général dans la
méthode des volumes finis on choisit plutôt un schéma implicite

152
Discrétisation du terme temporel

schéma d’Euler amont 1er ordre : Backward Euler scheme


n
  (  ) 
   ( ) n
P
  t P
   n    n1 
 P P
  ( )nP
 t 
 

   P    P  t ( )nP
n n 1

soit: de manière équivalente :

  P     P  t ( ) nP1
n 1 n

  P     P
n 1 n
 t ( ) n 1
P

Ce schéma en temps est implicite et d’ordre 1. 153


Discrétisation du terme temporel
schéma amont 2ième ordre : schéma de Gear
n
  (  ) 
   ( ) n
P
  t P
 3   n  4   n1    n2 
 P P P
  ( ) nP
 2t 
 
3    P  4    P     P  2t ( ) nP
n n 1 n2

soit: de manière équivalente :

3    P  4    P     P  2t ( ) nP1


n 1 n n 1

3    P  2t ( )  4    P     P 
n 1 n 1 n n 1
P

Ce schéma en temps est implicite et d’ordre 2 154


Discrétisation du terme temporel

Terme temporel  (  )
t

   P    P 
n 1 n
 (  )
 dv   V p (schéma d’Euler 1er ordre)
t  t 
VP  

 3  P  4   P    P 
n 1 n n 1
 (  ) (schéma de Gear 2ième ordre)
 t
dv  
 2t
V p

VP  

155
Discrétisation du terme source

Terme Source S

VP
S dv  SPV p

156
Intégration de l’équation de transport complète

 (  ) 
   (  u )    (   )  S
t

157
Intégration de l’équation de transport complète en 1D

En se plaçant en 1D et en adoptant le schema d’Euler amont,


l’intégration de l’équation de transport complete nous conduit alors à:

  n1   n 
 P P
VP  m wwn1  m een1 
 t 
 
 Dw Wn1  Pn1   De En1  Pn1 
 SPVP

 w y  e y m w    wu w y m e   eue y
Dw  De 
x w
xe

158
Les autres variables doivent être interpolées parce qu’elles ne sont pas
connues au centre des faces mais seulement aux noeuds.

E  P
e 
2 e
E  P
e  P E
2

ou

e   E  (1   )  P e
d1 d2
 e    E  (1   ) P P E

d1

d1  d 2
159
Calcul des coefficients de l’équation générique

Voyons maintenant comment les schémas d’interpolation sont implémentés pour


pouvoir calculer les coefficients de l’équation générique.

Pour commencer prenons par exemple le schéma centré sur un maillage régulier.
Le schéma est défini par:

E  P W  P
e  w 
2 2

L’équation de transport discrète 1D nous a conduit à:

  n1   n 


P
t
P
   
V p   m kkn1   Dk  Kn1   Pn1  SPV p (1)
  k e , w k e , w

160
Schéma centré

  n1   n   En1   Pn1 Wn1   Pn1


 P P
V p  m e  m w 
 t  2 2
 
   
De  En1   Pn1  Dk Wn1   Pn1  SPV p

En ordonnant les termes:

  n 1
m e m w  n1  m e  n1  m w 
P 
n 1 P
Vp    De  Dw    E   De   W   Dw  
 t 2 2   2   2 
   P
n

SPV p  Vp
t

161
Schéma centré

alors:
 m e 
AE    De 
 2 
 m w 
AW    Dw 
 2 
  Pn1 m e m w 
AP   Vp    De  Dw 
 t 2 2 
  P
n

SMB  SPV p  Vp
t

162
Schéma centré

Soit en reprenant la forme de l’équation générique

AP Pn1  AW Wn1  AE En1  SMB

On arrive à :

163
Schéma amont 1er ordre

Regardons maintenant l’implémentation du schéma amont


Schéma amont 1er ordre

Introduisons ces expressions dans l’équation discrète.

   n1    n 


P
t
P

  
V p  m e Pn1  m wWn1  De  En1   Pn1  Dw Wn1   Pn1 
 
 SPV p

   n1    n 
 P P
V p  min(m e ,0) En1  min(m e , 0) Pn1
 t 
 
 min(m w ,0)Wn1  min( m w ,0) Pn1

   
De  En1   Pn1  Dw Wn1   Pn1  SPV p
Schéma amont 1er ordre

En factorisant pour adopter la forme de l’équation générique

AP Pn1  AW Wn1  AE En1  SMB

On arrive à :

166
Expression des coefficients en fonction des différents schémas

Ainsi maintenant que le schéma d’interpolation a été choisi, on peut calculer les
coefficients de l’équation générique associés à chacun des schémas.

Schéma centré

 m 
AK   k  Dk 
 2 

Schéma amont

167
Schéma Hybride

Schéma Exponentiel

Schéma Power law


5
 Pk 
1  
k  
10 
Pk

168
Assemblage matriciel

Une fois que toutes les valeurs aux faces k ont été déterminées grâce aux schémas
d’interpolation. On peut factoriser les valeurs K aux noeuds pour assembler
l’équation générique.
AP Pn1  AW Wn1  AE En1  SMB

où les AK sont des coefficients constants (en regard de  ).


SMB est le second membre qui contiendra toutes les variables définies aux temps
inférieurs ou les termes sources.

0
Cette équation générique écrite
pour chaque noeud du
domaine conduit à l’obtention
d’un système
 n 1linéaire
n
du type: AX  B
AW AP AE

0
qui aura la structure suivante si le
maillage est structuré.

169
Intégration de l’équation de transport complète en 2D

En se plaçant en 2D nous aurions :

  n1   n 
 P P
V p  m wwn1  m een1  m ssn1  m nnn1 
 t 
 
 Dw Wn1  Pn1   De En1  Pn1 
 Ds Sn1  Pn1   Dn  Nn1  Pn1 
 SPVP

 w y  e y
Dw  De 
x w
x e

 s x  s x
Ds  Dn 
y y
s s 170
Assemblage matriciel

Une fois que toutes les valeurs aux faces k ont été déterminées grâce aux schémas
d’interpolation. On peut factoriser les valeurs K aux noeuds pour assembler
l’équation générique.
AP Pn1  AW Wn1  AE En1  AS Sn1  AN  Nn1  SMB

où les AK sont des coefficients constants (en regard de  ).


SMB est le second membre qui contiendra toutes les variables définies aux temps
inférieurs ou les termes sources.

Cette équation générique écrite


pour chaque noeud du 0
domaine conduit à l’obtention
d’un système
 n 1linéaire
n AS .....0.... AW AP AE ....0..... AN
du type: AX  B
qui aura la structure suivante si le
maillage est structuré.
0 171

Lorsque le champ de vitesse est à divergence nulle c’est à dire si :     u   0

VP
AP    AK 
K  N , E ,W , S t

Lorsque ce n’est pas le cas et pour certains schémas, la prédominance de la diagonale


principale n’est pas assurée ce qui va conduire à des difficultés de convergence lors de
la résolution du système linéaire.

172
Exemple illustratif

Equation instationnaire 1D

x P

T  2T
 2
t x

 xw  xe

T  2T 
v t dv  v  x 2 dv  v Tdv  v   T  dv  s T   nds
 T   
  P 
V    T e e e 
 n S    T w w S w
 n
 t  P
 T   T  T  
  xP       
 t  P  x e x  w 
173
Schéma DF Euler 1er ordre amont

 TPn  TPn1   T  n T n 
xP         Schéma en temps implicite
 t   x e x  w 
xP

 xw  xe

 TPn  TPn1   TEn  TPn TPn  TWn 


xP       Schéma DF 2nd ordre centré
  t    x e  xw 
 t t  n  t  n  t  n n 1
1   T 
 P  T 
 W  T
 E  T
 x P  xe x P  x w  x
 P w x  x 
 P e x
P

 t t  n1  t  n1  t  n1


1   T
 P   T
 W   T
 E  T n

 xP xe xP xw   xP xw   xP xe 


P 174
APTP  AW TW  AE TE  RHS Equation générique

t
AW  
x P  x w
t 
AE  
x P  xe
AP  1  AW  AE
RHS  TPn

Notez que pour un maillage uniforme  xw   xe  xP on retrouve exactement


la formulation aux Différences Finies.
175
La méthode des Volumes finis

 Géométries complexes
Problématique des géométries complexes

177
Problématique des géométries complexes

178
Problématique des géométries complexes

179
Problématique des géométries complexes

180
Formes des volumes de contrôle

Segment en 1D

Surface en 2D

Quadrilatère  Quadrilatère arbitraire Triangle

Polygones arbitraire
181
Formes des volumes de contrôle
Volume en 3 D

 Hexaèdre (6) Hexaèdre arbitraire (6) Tétraèdre (4)

Pyramidal arbitraire (5) Prisme (5) Polyhèdre arbitraire (8)


182
Les maillages complexes sont créés par des logiciels  mailleurs

Le but d’un mailleur est de


• numéroter tous les nœuds et de donner leur coordonnées.
• ainsi que de numéroter toutes les cellules et de donner leur définition:
 table de connectivité
183
En 3D

chaque nœud a 3 coordonnées (x,y,z)

nœuds

1 2.000000E+00 -2.000000E+00 0.000000E+00


2 2.057607E+00 -1.769570E+00 0.000000E+00
3 2.106616E+00 -1.573536E+00 0.000000E+00
4 2.155658E+00 -1.377369E+00 0.000000E+00
5 2.204729E+00 -1.181085E+00 0.000000E+00
6 2.253824E+00 -9.847052E-01 0.000000E+00
7 2.302938E+00 -7.882489E-01 0.000000E+00
8 2.352065E+00 -5.917387E-01 0.000000E+00
9 2.401201E+00 -3.951974E-01 0.000000E+00
10 2.450338E+00 -1.986485E-01 0.000000E+00
11 2.499529E+00 -1.999512E-04 0.000000E+00
12 2.450916E+00 2.050071E-01 0.000000E+00
13 2.401373E+00 4.103034E-01 0.000000E+00
14 2.352257E+00 6.146129E-01 0.000000E+00
15 2.303148E+00 8.189049E-01 0.000000E+00
………………….
……………………

184
En 3D
hexaèdre: chaque cellule est identifiée par 8 nœuds

tétraèdre: chaque cellule est identifiée par 4 nœuds

table de connectivité pour hexaèdre*

1 1 22 23 2 1072 1093 1094 1073


2 2 23 24 3 1073 1094 1095 1074
3 3 24 25 4 1074 1095 1096 1075
4 4 25 26 5 1075 1096 1097 1076
5 5 26 27 6 1076 1097 1098 1077
6 6 27 28 7 1077 1098 1099 1078
7 7 28 29 8 1078 1099 1100 1079
8 8 29 30 9 1079 1100 1101 1080
9 9 30 31 10 1080 1101 1102 1081
10 10 31 32 11 1081 1102 1103 1082
11 11 32 33 12 1082 1103 1104 1083
12 12 33 34 13 1083 1104 1105 1084
13 13 34 35 14 1084 1105 1106 1085
………………….
………………….

Ces données nous permettent ensuite de calculer la métrique.


* Notez que pour des maillages structurés la table de connectivité n’est pas nécessaire. 185
Détermination de la métrique

Informations topologiques

186
Détermination de la métrique en 2D

Informations topologiques

187
Détermination de la métrique en 2D

Informations topologiques

188
Détermination de la métrique en 2D pour un quadrilatère non 

Coordonnées des centres des volumes de contrôle

189
Détermination de la métrique en 2D

Distances internodales

Détermination des surfaces

190
Détermination de la métrique en 2D

Détermination des normales

Détermination du volume
C’est l’air du quadrilatère déterminé par les 4 vertex
NE, NW, SW, SE

191
Détermination de la métrique en 2D

Informations métriques

192
Détermination de la métrique en 2D pour un triangle

Coordonnées des centres des volumes de contrôle

193
Détermination de la métrique en 2D pour un triangle

Distances internodales

Détermination des surfaces

194
Détermination de la métrique en 2D pour un triangle

Détermination des normales

195
Détermination de la métrique en 2D pour un triangle

Détermination du volume

En 2D, le volume du volume de


contrôle est une surface qui ici
correspond en fait à l’aire du triangle
défini par les trois vertex Q, R, S.

Il existe plusieurs façons de calculer l’aire d’un


triangle quelconque.
Ici, compte tenu des données, il est plus simple
d’utiliser la formule d’Héron.

196
Discrétisation du terme diffusif en géométrie complexe

Terme diffusif      

Flux Diffusif

 
F  
D
S
    n ds        n ds
k n ,e , w, s Sk

 
k  n ,e , w , s
  k  nk Sk 
 
   e  ne Se    w  nw S w
 
   n  nn Sn     s  ns S s

197
Discrétisation du terme diffusif en géométrie complexe

  
F D       n ds    e  ne Se     w  nw S w
S
 
   n  nn Sn     s  ns S s

198
Discrétisation du terme diffusif en géométrie complexe

199
Discrétisation du terme diffusif en géométrie complexe
Cas des quadrilatères non 

200
Discrétisation du terme diffusif en géométrie complexe

Lorsque le maillage n’est plus orthogonal :

201
Discrétisation du terme diffusif en géométrie complexe

Expression de   k  nk

      
  k    nk    tk
 n  k  t  k

  
  k  nk   
 n  k

         
  k  k    nk   k    tk   k
 n  k  t k
        
  k  k     k  nk  nk  k    tk  k
 t k

Soit :
 

  k  nk   
1 
   k   k
  t    
k k
    
  k  nk    n   t 
k k k

202
Discrétisation du terme diffusif en géométrie complexe
 

  k  nk   
1 
   k   k 
k  tk    
   
  k  nk   
k  nk 
t  k

En utilisant un schéma centré d’ordre deux pour exprimer les dérivées premières,
on obtient finalement :

 1  K  P   b  a 
  k  nk     tan  
k  
cos  k    xk    ab 

203
Discrétisation du terme diffusif en géométrie complexe

Méthodes basées sur la décomposition de la normale

  
nk  n1  n2

204
Discrétisation du terme diffusif en géométrie complexe

Méthodes basées sur la décomposition de la normale

205
Discrétisation du terme diffusif en géométrie complexe

206
Discrétisation du terme diffusif en géométrie complexe

Mise en oeuvre

207
Discrétisation du terme diffusif en géométrie complexe

Application à l’équation de Laplace

      0

      dv  0
VP


     nds  0
SP

208
Discrétisation du terme diffusif en géométrie complexe

209
Discrétisation du terme diffusif en géométrie complexe

Equation générique et coefficients

210
Discrétisation du terme diffusif en géométrie complexe

Calcul du gradient   k (Méthode de Gauss)


m

211
Discrétisation du terme diffusif en géométrie complexe

Calcul du gradient (Méthode de Gauss)

212
Discrétisation du terme diffusif en géométrie complexe
Cas des triangles

213
Discrétisation du terme diffusif en géométrie complexe
Equation générique et coefficients

214
Discrétisation de l’équation de transport

215
Discrétisation de l’équation de transport

216
Discrétisation de l’équation de transport

217
Discrétisation de l’équation de transport

Equation générique et coefficients

218
Implémentation des conditions aux limites

La résolution des EDP requiert la spécification de conditions aux limites sur toutes les
frontières du domaine de calcul 

Nous avons vu précédemment que les CL étaient un artéfact qui rend unique la solution
recherchée.

Ces frontières seront appelées 

Relativement à la nature des équations et à certaines considérations physiques du


problème que l’on cherche à résoudre, la prescription de CL sur toutes les frontières
est nécessaire.

Les CL doivent être spécifiées sur toutes les inconnues du problème (dans le cas d’un
système d’EDP) à résoudre. Elles sont prescrites pour décrire le comportement de (ou
des) variable(s) sur les frontières du domaine.

La solution peut être déterminée si et seulement si les CL sont spécifiées sur toutes les
frontières du domaine extérieures (et intérieures dans le cas d’obstacles dans
le domaine)
219
Implémentation des conditions aux limites

La spécification de CL répond au besoin de fermer le problème mathématique dans


le but d’avoir un problème bien posé.
C’est aussi le moyen de mieux “coller” à la réalité physique du problème.

220
Implémentation des conditions aux limites

Nous considérons ici la frontière est.

Noeuds concernés par le traitement des CL

Noeuds frontières où la CL est spécifiée

221
Implémentation des conditions aux limites

Soit Vp un volume de contrôle qui jouxte la fontière. Notons Sb la face de ce


volume de contrôle qui se trouve sur la frontière. b est le centre de la face Sb. Le
Point cardinale B est confondu avec le point b. L’inconnue sur la frontière est
donc B  b

B
P 
b nb

222
Implémentation des conditions aux limites

Reprenons l’équation générique écrite pour le noeud P près de la frontière.

APP  AW W  ABB  ASS  AN N  SMB (1)

B est en fait la valeur qui sera donnée par la condition à la limite b à ce stade est
et qui
inconnue. AB est le coefficient associé au point B dans la discrétisation de l’équation aux
dérivées partielles que nous avons intégrée sur le volume de contrôle Vp. Dans l’exemple
pris, cela correspondrait à AE..

Exprimons Ben fonction de la valeur au nœud intérieur sous la forme:

B  A  BP (2)
Où A et B sont 2 coefficients qu’il faudra déterminer en fonction de la condition à la limite
à prescrire.

En injectant l’expression de B dans (1) et en ré-ordonnant les coefficients on a:

223
 AP  AB  B P  AW W  ASS  AN N  SMB   AB  A (3)

Soit en ré-écrivant l’équation sous la forme générique:

AP*P  AW* W  AB*B  AS*S  AN*  N  SMB*

Avec:
AP*  AP  AB  B
SMB*  SMB  AB  A
AB*  0

On remarque que:
• le coefficient AB*associé au point B la frontière est nul.
sur
• Les coefficients qui ont changé sont etA* SMB*
B
• Ils dependent des deux coefficients A et B.
224
Détermination du coefficient AB

le coefficient AB provient de la discrétisation sur la surface Sb.

Comme nous l’avons vu précédemment ce coefficient AB fera intervenir le


 
flux massique m b  bub .nb Sb
 b Sb
et le coefficient diffusif Db   b représente la distance Pb
b

Les différentes quantités doivent être évaluées sur la frontière au point b.

En principe sont supposées connues sur cette frontière.

225
Détermination des coefficients A et B

La valeur de ces coefficients depend du type de la CL que nous voulons imposer.

226
conditions aux limites de Dirichlet

Une condition de Dirichlet fixe la valeur de  sur la frontière au point b.


Soit b  0

Par identification avec B  b  A  BP on en déduit que:

A  0
B0

Et donc:

AP*  AP
SMB*  SMB  AB0

227
conditions aux limites de Neumann

Pour les CL de Neumann la dérivée première est spécifiée sur la frontière:

  
   n b   0 (1)
n b

Nous n’avons donc pas directement la valeur de b. Nous devons extraire de (1)
la valeur de b

Pour cela il faut discrétiser la CL avec un schéma aux différences finies approprié.

  b  P
Avec un schéma amont d’ordre 1 nous avons:    0  b  P
n b b

Par identification avec B  b  A  BP on en déduit que:


A0
B 1

AP*  AP  AB
Et donc:
SMB*  SMB 228
conditions aux limites de Robin

Une condition de Robin est une condition mixte entre Dirichlet et Neumann.
Elle s’exprime de la manière la plus générale de la façon suivante:


b      n b   (4)

Où  ,  ,  sont des coefficients donnés.


 b  P 
La discrétisation de (4) conduit à: b    
 b 

   
Soit: b    P
 b     b   

Par identification avec B  b  A  BP on en déduit que:


A
 b  

B
 b   229
Et donc:


AP*  AP  AB 
 b  

SMB*  SMB  AB 
 b  

230
La méthode des Volumes finis en CFD
Etapes de base pour la réalisation d’une simulation

1. Définir les buts de la simulation


2. Créer la géométrie et le maillage
Pré-Processing
3. Modèles physiques et paramétrage du solver
4. Calcul et monitoring de la solution Processing

5. Examen des résultats et post-processing Post-Processing

6. Correction du modèle numérique et/ou physique si


nécessaire
Pré-processing et maillage

La 1ère étape est d’établir le maillage en fonction de la méthode de


de discrétisation qui a été choisie.
En fait c’est la complexité de la géométrie qui va conduire au choix de
la méthode.
 DF
VF


Géométrie simple 



S

233
Pré-processing et maillage

VF
Géométrie complexe  
 EF

234
Les maillages complexes sont générés par des logiciels spécifiques
 mailleur

235
Ainsi toutes ces considerations au sujet du type de maillage doit nous aider à
Concevoir le type de maillage le plus adapté à notre problème.

Cela doit nous aider à répondre aux questions:

Peut-on utiliser un seul maillage structuré?


Doit on utiliser un maillage multiblock ?
Doit on utiliser un maillage non-structuré ?

Ces réponses vont pouvoir nous conduire à définir la méthode de discrétisation la


plus appropriée pour notre problème.

236
Modèles mathématiques

La première étape est de définir quel modèle mathématique est le plus approprié à la
physique de l’écoulement.
Il existe une hiérarchie en terme de coût de développement et de temps de calcul que
l’on doit garder à l’esprit avant de commencer à développer le code de calcul.

Ainsi nous devons choisir correctement le modèle mathématique afin de limiter ces coûts:

Le type de questions auxquelles nous pouvons répondre sont:

• La géométrie peut elle être considérée comme 2D ?


• L’écoulement est il stationnaire ou instationnaire ?
• L’écoulement est il laminaire ou turbulent ?
• En cas d’écoulements turbulents quel modèle est il le plus approprié?
• Il y a t’il des transferts de chaleur et/ou de masse dans l’écoulement?
• Est il possible d’adopter l’hypothèse de Boussinesq ?
• Le fluide est il Newtonien ou pas ?
237
•Est ce que le fluide peut être considéré comme étant incompressible ou pas ?
• Si le fluide est compressible à quelle loi d’état obéit il?
(loi des gaz parfaits, loi de Wan der Waals ?)
• Si le fluide est compressible est il subsonique, supersonique ou hypersonique ?

La réponse à ces questions déterminera la physique de ce que l’on veut simuler.


Mais cela va aussi conduire les choix des méthodes numériques, des algorithmes,
des schémas numériques qui devront être appliqués.

238
Solution des sytèmes linéaires creux

Généralement et spécialement lorsqu’on utilise


 n1 un
 n schéma semi-implicite,
on a à résoudre un système linéaire  AX  b

Là encore plusieurs choix peuvent être faits selon le solver de système linéaire.
Il existe plus de 20 méthodes différentes pour résoudre un système linéaire.

• Tout d’abord nous devons choisir entre les solver directs et iteratifs.

• Deuxièmement on doit prendre en compte la structure de la matrice


(diagonale ou bande),
Et ses propriétés (définie positive, symmétrique)

239
Post-processing et visualization des données

Finalement quand tous les calculs ont été faits, les résultats sont stockés dans des
fichiers en des suites énormes de nombres.

Ces nombres ne nous aident pas vraiment à accroitre notre compréhension du


comportement de l’écoulement.

Nous devons utiliser des logiciels de visualisation spécifiques qui vont lire ces données
et les transcrire sous forme d’informations visuelles.

240
Cela va nous donner une compréhension de l’écoulement dans le but de nous aider
à mieux analyser la physique.

241
Les types de maillages

On définit 2 familles de maillages.


Maillages structurés

C’est la structure la plus simple. La position de chaque point ou


noeud dans le domaine est uniquement identifié par une ensemble de
2 (en 2D) ou 3 (en 3D), indices (i,j).

Chaque point P a 4 (en 2D), 6 en (3D) voisins. Un de ces indices pour


chacun des noeuds voisins diffère de 1 de l’indice correspondant
de P.

242
Les relations sont implicites dans le sens où si on connait les indices
des points P et P' il est facile de connaître leur localisation absolue ou
relative.

De plus avec ces indices, les coordonnées de chaque point P et P' sont
immédiatement déterminées.
La connaissance des indices d’un volume de contrôle donne directement
les vertex qui définissent ce volume de contrôle.

243
Avantages
• Cette connectivité entre les voisins simplifie la programmation et la
structure de la matrice.

Désavantages

• Comparer aux maillages non-structurés, cela offre moins de potentiels


pour gérer des maillages vraiment très complexes.

• Ce peut être difficile de contrôler la distribution et la concentration des


noeuds. Les maillages structurés peuvent induire des résolutions sérées
dans certaines zone du domaine et gâcher ainsi les ressources.
Ce problème est exagéré en 3D.
De plus de longues et fines cellules peuvent apparaître et affecter
la convergence négativement.
244
Exemples
Maillages structurés 2D

Uniforme (régulier)

Non uniforme

245
Maillages structurés 2D par bloc

Coincidant à l’interface

246
Ne coincidant pas à l’interface

247
Maillages structurés 3D

248
Maillages non-structurés
Pour les géométries très complexes, la forme la plus flexible pour un
Volume de contrôle est le triangle en 2D ou tétraèdre en 3D.
Avec ce type de forme il est possible de mailler n’importe quoi!

Mais quand le domaine est maillé avec ce type de volumes de contrôle


la structure du maillage devient non-structuré.

Cela veut dire que la localisation des nœuds (coordonnées) et la


connectivité des voisins doit être spécifiée explicitement.

Les nœuds sont numérotés mais pas avec une paire (ou un triplet)
d’indices mais avec un seul indice (même en 3D).

Pour un point donné, la connaissance de cet indice ne donne pas les


coordonnées du nœud et encore moins celles de ces voisins. 249
Pour un volume de control, connaissant cet indice ne donne pas
non plus les vertex définissant ce CV.
Il est nécessaire de disposer de la table de connectivité

La matrice du système linéaire n’a pas non plus une structure régulière
de type multi-diagonale comme dans le cas structuré.

La matrice a une structure bande. La largeur de bande peut être réduite


par une numérotation optimisée.

Les solver pour matrices bandes sont usuellement plus lents que ceux
dédiés aux matrices diagonales.
Généralement les maillages non-structurés sont faits de triangles ou
de tétraèdres.
250
Mais les CV peuvent avoir n’importe quelle forme et chaque nœuds
peut avoir n’importe quel nombre de voisins sans restriction dépendant
de la forme des CV.
Il est possible d’avoir des CV de formes différentes.
(tétraèdre + hexaèdre)  maillages optimisés
Avantages
• Comparé aux maillages structurés, cela offre le maximum de
potentialités pour manager des maillages très complexes.
• Le contrôle de la distribution des nœuds et leur concentration est
• optimisé.
Désavantages
• L’implémentation est plus difficile à réaliser due à une structure de
données plus difficile à gérer.
• La génération du maillage ainsi que le post-traitement sont
251
généralement plus difficiles aussi.
Exemples

Maillages 2D non-structurés

252
253
Maillages 3D non-structurés

254
255
Maillages Hybrides

256
Détermination de la pression

Pour les écoulements incompressibles le calcul de la pression n’est pas immédiat


dans la mesure où nous ne disposons pas d’équation d’état comme dans le cas
des écoulements compressibles (gaz). Aussi, l’équation de continuité est
seulement fonction de la vitesse et non pas de la pression.

Les équations de Qdv /x et /y contiennent bien un terme de pression.


Mais dans la mesure où la plupart des termes dépendent de la vitesse,
il est naturel d’utiliser ces équations pour calculer les composantes de la vitesse.
Ainsi le problème devient comment obtenir la pression ?

Une méthode directe consiterait à discrétiser l’équation de continuité et de quantité de


mouvement simultanément. Mais cela donnerait un système linéaire couplé énorme
contenant toutes les variables (u,v,p) et conséquemment de gros efforts de calculs
pour le résoudre.
Même si depuis longtemps, cette façon d’aborder et de résoudre le problème n’a pas
souvent été exploitée, maintenant et grâce à de nouveaux développements en algèbre
linéaire, cette approche devient plus tendance. 257
Mais généralement les gens préfèrent utiliser ce que l’on appelle "solver séquentiel"
où nous commençons par résoudre l’équation de Qdv pour obtenir les composantes de
la vitesse et ensuite calculer la pression.

Ainsi il est nécessaire de développer une stratégie spéciale pour la calculer.

Même si l’équation de continuité ne contient pas de pression, elle va néanmoins


être requise pour construire une équation pour la pression.

Cette stratégie est appelée algorithme de couplage vitesse-pression.

258
On souhaite résoudre les équations de Navier-Stokes incompressibles

 (1)
  u n1  0
  u n1  n1  n1   n1  n1
     (u  )u   p  u  f
n 1
(2)
  t  
 

Mais ce n’est pas tout de suite possible car l’équation de conservation de la


quantité de movement est non-lineaire*.
Ainsi la première étape consiste à la linéariser l’équation de conservation de la
quantité de mouvement

  u n1  n  n1   n1  n


     (u  )u   p  u  f
n 1
(3)
  t  
 

Notez que les forces externes sont prises au pas de temps n aussi.

259
* où il faut changer de type de méthode

Ce n’est toujours pas possible de résoudre ce système car u et p qui sont inconnus
sont exprimés au même pas de temps (n+1).

Ainsi nous devons modifier l’équation et prendre la pression au pas de temps n.


  u n1  0
  u n1  n *  *  n
     (u )u   p  u  f
n
(4)
  t  
 

Maintenant nous pouvons résoudre (4) dans la mesure où p est déjà connue au pas de

temps n. Notez que si la pression est prise à l’instant n, alors la vitesse obtenue u
ne peut-être la vitesse à l’instant n+1. Ce sera une vitesse predictive que nous

appellerons u *

Mais maintenant comment allons nous calculer la vitesse et la pression


au pas de temps n+1 ?

C’est l’objectif des algorithmes de couplage vitesse-pression


260
Ces algorithmes sont toujours basés sur l’utilisation de l’équation de continuité (1)
que l’on considère comme une contrainte à satisfaire sur le champ de vitesse
et que l’on emploie pour construire l’équation qui va nous permettre de calculer la
pression.

261
Algorithme de couplage vitesse-pression SIMPLE

Cet algorithme a été initialement développé pour déterminer le champ de pression


pour les équations de Navier-Stokes incompressibles.
Mais avec quelques modifications il est aussi adapté pour les écoulements compressibles.

Une autre caractéristique intéressante de cet algorithme c’est qu’il fonctionne aussi
quelque soit le type de méthode de discrétisation choisie (Différences finies ou
éléments finis).
Ecrivons les équations de Naviers-Stokes sous leur forme générique discrète:

  n1  n
AP uPn 1   AK uK  QP   p n1  (1)
P
K  N , E ,W , S


Idéalement u et p devraient être pris au même pas de temps mais nous avons vu que ce
n’était pas possible.

262
Ainsi il sera nécessaire de considérer la pression au pas de temps précédent, mais ce

faisant, nous n’aurons certainement pas la “vraie” vitesse u n 1 .
L’équation devient:

 *  n
AP uP*   AK uK  QP   p n  (2)
P
K  N , E ,W , S

 
où u * est maintenant une valeur prédictive ou approchée de u n 1
et qu’il faudra corriger pour obtenir la vraie vitesse un+1.

définissons u et p les corrections que l’on devra appliquer pour obtenir

respectivement u n1 et p n1

  
u n1  u *  u  (3)
p n1  p n  p

En faisant l’equation (1) – l’equation (2) nous avons :


263
   
AP (u Pn1  u P* )   AK (uKn1  u K* )    p n1  p n 
P
K  N , E ,W , S

prenant en compte les équations (3) nous arrivons


à:
 
AP u P   AK uK    p  P
K  N , E ,W , S

 
 1  AK u K
uP  uP   p  P (4) 
avec uP   K  N ,E ,W ,S
AP AP

Il s’agit de la relation entre la correction de vitesse et la correction de pression

264
rappelons l’équation de continuité pour un écoulement incompressible:


  u n1  0 (5)

 n1 * 
Ce qui compte tenu du fait que u  u  u implique

  (6)
  u    u *

  1
Prenons la divergence de l’équation (4) uP  uP   p  P
AP

   1 
  u P    u P      p  P 
   
 AP 

265
Qui compte-tenu de l’equation (6) :   u    u*

 1   
nous conduit à :     p  P     uP    u * (7)
 AP 

Cette équation représente l’équation de correction de pression

266

En examinant l’équation (7) le terme   AK u K
n’est pas accessible
u P   K  N , E ,W ,S

AP
ainsi SIMPLE décide de le négliger tout simplement.

L’équation de pression (7) devient alors:

 1  
    p   P     u * (8)
 AP 

Ainsi quand (8) est résolue nous pouvons obtenir la correction de pression p 
 
Une fois que p est connue nous pouvons calculer la correction de vitesse P
u
avec (4)

Ensuite avec (3) nous pouvons calculer la nouvelle vitesse et pression


au pas de temps n+1 267
L’algorithme complet s’établit de la façon suivante:

 *  n 
 On résoud (2) AP uP*   AK uK  QP   p n  pour obtenir uP*
P
K  N , E ,W , S

 1  
 On résoud l’équation de correction de pression (8)     p   P     u *
 AP 
pour obtenir p
 1
 On en déduit la correction de vitesse à partir de (4) uP    p  P
AP

et obtenir uP
  
u n1  u *  u 
 Finalement à partir de (3)
p n1  p n  p
on peut calculer la nouvelle vitesse et la nouvelle pression au pas de

temps n+1 : uPn1 et p n 1
268

  AK u K
Parce que nous avons négligé le terme u P   K  N ,E ,W ,S
AP
dans l’équation (8) la vitesse finale ne sera pas aussi précise qu’on l’aurait souhaité.

En particulier si on calcule la divergence du champ de vitesse:   u n 1

elle ne sera pas nulle comme attendu, ni même nécessairement petite.

Ainsi nous devrons répéter toute la procédure plusieurs fois.

L’algorithme est donc inclu dans un processus itératif à faire jusqu’à ce que la

quantité   u n1   où  est une tolérance que l’on se fixe de l’ordre de 10-5 à 10-3

269
pour k=1,2,…..
 *  n 
résoudre AP uP*   AK uK  QP   p n  pour obtenir uP*
P
K  N , E ,W , S

 1  
résoudre     p   P     u * pour obtenir p
 AP 
 1 
A partir de uP    p  P on calcule
 uP
AP
  
u k 1  u *  u 
A partir de (3) on calcule
p k 1  p n  p

On peut alors contrôler la conservation de la masse en calculant   u k 1

 
 u k 1  u n1
si   u k 1   alors
p k 1  p n1
sinon next k
Fin 270
cet algorithme peut converger très lentement spécialement pour des problèmes raides.
Plusieurs autres variantes de cet algorithme ont été développées.
SIMPLER, SIMPLEST, SIMPLEC,…
Ils diffèrent seulement dans la façon d’approximer le terme qui a été négligé dans
l’équation de correction de pression SIMPLE.

Il n’a jamais été possible de déterminer lequel d’entre eux est le meilleur.

En fait l’efficacité d’un algorithme est dit “problème dépendant”.


Pour certains cas, SIMPLE peut converger plus vite, tandis que dans d’autres cas ce
sera SIMPLEST ou SIMPLER…

Beaucoup de codes industriels proposent à l’utilisateur plusieurs de ces algorithmes.

Un autre algorithme appelé PISO semble avoir les faveurs du public.


Il est aussi basé sur le même principe de prédiction-correction.

271
Les différents type de conditions aux limites
Frontières externes
Les noeuds où les conditions aux limites requises sont représentées sur le domaine de
calcul en vert, La solution est calculée sur les points noirs.
NJ
NJM

J=0

I=0 1 2 3 4 5 6 7 8 9 NIM NI

NICV=10 NI=NICV+1 NIM= NI-1


272
NJCV=4 NJ=NJCV+1 NJM=NJ-1
Les différents type de conditions aux limites

Sur toutes les frontières, toutes les variables doivent être prescrites.
u, v, et p doivent être spécifiées sur tous les points appartenant aux frontiers, c’est
à dire sur tous les points verts.

NJ
NJM

J=0

I=0 1 2 3 4 5 6 7 8 9 NIM NI

273
Condition de paroi (CL Dirichlet)

Cette condition traduit le fait que le fluide adhère à la paroi


dû à sa visosité.
Par exemple sur la frontière ouest

NJ
u (0, j )  U wall j
NJM

v (0, j )  Vwall j
3

Si la paroi est fixe 2

u (0, j )  0 j 1

v (0, j )  0 j J=0
I=0
274
Condition d’entrée (CL Dirichlet)

où (U inlet ,Vinlet ) sont les composantes de la vitesse


u (0, j )  U inlet
d’entrée.
v (0, j )  Vinlet

275
Condition de sortie libre
Ce type de condition est la plus compliquée à définir car nous devons spécifier une
condition sur les variables indiquant que le fluide quitte le domaine de calcul.
Plusieurs alternatives existent mais la plus utilisée est de considérer une condition
de type Neumann. Pour comprendre la signification d’une telle condition on peut
se dire que les composantes de la vitesse de part et d’autre de la frontière de sortie
ont la même valeur.
Ce peut être vrai si le régime d’écoulement est stationnaire. Mais pour des
écoulements à haut nombre de Reynolds où avec des tourbillons qui traversent le
domaine cette condition est trop contraignante.

276
Par exemple sur la frontière est une condition de Neumann est adoptée:

u
0 u ( NI , j )  u ( NIM , j )
x
v
 v ( NI , j )  v( NIM , j )
NJ
NJM
0
x
3

On discrétise les dérivées avec un schema amont.

2
Si on était sur la frontière ouest" on utiliserait une dérivée
décentrée aval
1

J=0
NIM NI

277
Condition de symétrie

Le but de cette condition est de limiter la taille du domaine de calcul en


considérant que l’écoulement va suivre une certaine symétrie généralement
induite par la géométrie du domaine.

Le nombre de noeuds sera donc deux fois moins important.


278
Dans ce cas la frontière "sud" sera de type symétrie.
cette condition s’exprime par:

V// Cela veut dire que la dérivée de la composante // à la frontière est


0
n nulle de même que la composante normale à la frontière.
V  0

279
Condition de glissement libre

En principe le fluide adhère à la paroi à cause de la viscosité.


Mais parfois ce peut être commode d’exprimer au contraire que le fluide glisse sur
sur la paroi.

D’un point de vue pratique cette condition s’exprime exactement comme


une condition de symétrie de telle sorte que:

V//
0
n
V  0

280
Conditions aux limites de pression

Le fait de requérir à des CL pour la pression dépend de l’algorithme de couplage.


Dans l’algorithme SIMPLE on doit prescrire une condition à la limite sur la correction
de pression p’ mais pas sur p.

La CL généralement imposée sur la correction de pression p’ est de type Neumann:

p où n est la direction normale à la frontière


0
n

Mais il est bien connu que l’équation de Poisson avec des conditions de Neumann
est un problème “mal posé” et possède une infinité de solutions.
Pour en fixer et sélectionner une nous devons fixer la valeur de cette solution
sur un noeud arbitraire du domaine.

La valeur de la pression p sur la frontière est quant à elle obtenue par extrapolation
en fonction de la valeur de la pression sur les noeuds internes. 281
Sur des frontières de sortie libre nous imposons aussi généralement :

p  patm

De mauvaises conditions aux limites vont faire diverger le code. Cet aspect des CL
est donc vraiment fondamental.

282
Post-processing et visualisation
Introduction

Une fois que la solution a été obtenue, la dernière étape est le post-processing.
L’objectif de la simulation numérique est de donner des informations prédictives sur
le comportement d’un écoulement dont la réalisation expérimentale est difficile,
coûteuse ou simplement impossible.
Le but est de “capturer” la structure de l’écoulement pour accroître notre
compréhension de la physique et prédire son évolution.
A partir des variables primitives u,v,p, nous pouvons calculer d’autres quantités
qui peuvent aider à caractériser l’écoulement.

• le débit
• pertes de charge
• détection des zones de recirculation
• comportement tourbillonaire
• forces de pression
• coefficients aérodynamiques (Cp, Cx)

Toutes ces quantités sont accessibles à partir de u,v,p.


284
Dans le même temps quand ces variables ont été calculées on peut les visualiser dans
le but de pouvoir analyser l’écoulement et sa structure.
Les données (inconnues sur chaque noeuds de maillage) sont stockées dans des fichiers
sous forme de liste de nombres conséquente.

La quantité de données est directement proportionnelle au nombre de noeuds du


maillage.
Par exemple, la simulation d’un écoulement 3D, incompressible, isotherme va requérir
de résoudre et stocker au moins 4 inconnues (u,v,w,p).

Si notre maillage est NI=512, NJ=256, NK=128 on aura 16.777.216 noeuds.


Ce qui veut dire aux alentours de 68 millions d’inconnues à déterminer à chaque pas de
temps. Si on calcule en plus d’autres quantités comme la fonction de courant et
le rotationel on aura 100 millions de données à chaque pas de temps.
Si on travail en double précision (recommandé) on aura 800 MO à stocker à chaque
pas de temps.
Si on sauvegarde 100 pas de temps on aura en définitive 80 GO de données à stocker et
à analyser !
285
Si nous ouvrons ces fichiers nous avons une énorme quantité de nombres
dont il va falloir extraire l’information.
VARIABLES = "X","Y","ROT"
ZONE I= 21,J= 121, F=POINT
0.000000E+00 0.000000E+00 0.000000E+00
0.000000E+00 5.000000E-02 -2.775446E-01
0.000000E+00 1.000000E-01 -3.527607E-01
0.000000E+00 1.500000E-01 -4.967971E-01
0.000000E+00 2.000000E-01 -7.662501E-01
0.000000E+00 2.500000E-01 -1.283465
0.000000E+00 3.000000E-01 -2.320314
0.000000E+00 3.500000E-01 -24.501740
0.000000E+00 4.000000E-01 -2.134225
0.000000E+00 4.500000E-01 -8.650850E-01
0.000000E+00 5.000000E-01 -6.296680E-09
0.000000E+00 5.500000E-01 8.650850E-01
0.000000E+00 6.000000E-01 2.134225
0.000000E+00 6.500000E-01 24.501740
0.000000E+00 7.000000E-01 2.320314
0.000000E+00 7.500000E-01 1.283465
0.000000E+00 8.000000E-01 7.662501E-01
0.000000E+00 8.500000E-01 4.967971E-01
0.000000E+00 9.000000E-01 3.527607E-01
0.000000E+00 9.500000E-01 2.775446E-01
0.000000E+00 1.000000 0.000000E+00
8.333334E-02 0.000000E+00 1.017540
8.333334E-02 5.000000E-02 8.839207E-01
8.333334E-02 1.000000E-01 8.996696E-01
8.333334E-02 1.500000E-01 8.263159E-01
8.333334E-02 2.000000E-01 4.343922E-01
8.333334E-02 2.500000E-01 -8.905963E-01
8.333334E-02 3.000000E-01 -4.782863
8.333334E-02 3.500000E-01 -15.997820
8.333334E-02 4.000000E-01 -5.104375
8.333334E-02 4.500000E-01 -1.432466
8.333334E-02 5.000000E-01 3.064514E-08
286
Pour se faire, nous devons utiliser des outils de visualisation qui vont lire
ces fichiers et les représenter de façon graphique pour rendre l’analyse
de l’écoulement plus simple et surtout visuelle.
Il existe plusieurs logiciels qui réalisent ces taches:
Tecplot, Fieldview, Ensight, AVS, Plot3D, DataExplorer,…..

287
288
Ces logiciels sont capables de tracer le maillage et l’évolution (dans le cas de
calculs instationnaires) des variables stockées en termes:

• iso-contours en 2D
• iso-surfaces en 3D

Ils peuvent tracer une simple courbe y=f(x) ou tracer des champs de vecteurs

A partir des valeurs primitives u,v,w, p certains de ces logiciels peuvent calculer
d’autres variables comme:

• fonction de courant (streamlines)


• rotationel
• lignes d’émission
• rubans

Ou toute autre grandeur comme:


• Cp, Cx
• force dûe à la pression
289
Calculs subsidiaires

Débit
 où n est la normale à S
Le débit au travers d’une surface S est: m   V .n ds
S

Vitesse moyenne m
u
S

Fonction de courant 
 ij
 
La fonction de courant est définie:  u ou  v
y x
Pour la calculer nous devons intégrer un de ses définitions.
Pour cela nous devons localiser la variable  de uij
manière avantageuse.

ainsi   ij 1
 u   ij   ij 1  uij y
y 290
rotationel
Le rotationel est un vecteur de 3 composantes définies par:
w v
   
i j k y z
    u w
  
x y z z x
u v w v  u
x y
uij 1
En 2D le vecteur se réduit à un scalaire
(une seule composante non nulle) ij
vij vi 1 j
v u
z    
x y
uij
Il est commode aussi de bien localiser 

291
Représentations 1D

Courbes y=f(x)

292
Représentations 2D

Iso-contours

293
Champ de vitesse  
Fonction de courant  u or  v
(streamlines) y x

Iso_u contours Iso_v contours


294
v u
Iso_rotationel  
x y

295
Maillage iso-contours 

296
Iso_p contours

Iso_u contours

Iso_v contours

297
Représentations mixtes

Iso_rotationel + champ de vitesse

298
299
Champ de température
+
Fonction de courant

300
Lignes d’émission

301
302
Représentations 3D

Maillages

303
Iso-surfaces

304
iso-surfaces de pression 

 iso-surfaces de la composante u

305
306
Lignes d’émission

307
Lignes d’émission

308
Rubans

309
310
Représentations mixtes

Iso-surface+coupe+lignes d’émission

311
Iso-surface+coupe+lignes d’émission

312
Iso-surface+coupe+lignes d’émission

313
Bonnes pratiques en CFD

314
Exigence de qualité

La précision des résultats issus de calculs CFD peut être affectée par différents
type d’erreurs. En comprenant la source de ces erreurs on peut développer de
bonnes pratiques afin de minimiser ces erreurs.

La CFD est utilisée à différentes étapes des process industriels


• Design et Optimisation de composants et de machines
• Sécurité
• Prototypes

Lorsque l’on entreprend une simulation numérique certaines considérations devraient


être prises en compte.
• Pour quoi les résultats seront-ils utilisés?
• De quel niveau de précision a-t-on besoin?

315
Les différents types d’erreurs

Il existe différentes sources d’erreurs qui peuvent se combiner


et affecter la précision de la solution obtenue.

 Erreur d’arrondis
• Les ordinateurs fonctionnent avec un certain ordre de précision.
Ce sont des erreurs induites par la machine.

 Erreurs d’itération
• Il existe une différence entre la solution convergée et la solution à
l’itération m

 Erreur de discrétisation
• Différence entre la solution convergée sur un maillage donné et la
solution analytique ou ’exacte’ (si tant est que l’on puisse l’obtenir) ou la
solution obtenue sur un maillage très fin
316
Les différents types d’erreurs

 Erreur de modélisation
• Différence entre la solution ‘exacte’ et la solution ‘réelle’
obtenue à partir de données expérimentales.
• Grands rapports d’aspects
o Grandes différences dans les échelles de longueurs
o Large gamme de variation pour les variables

 Erreur de programmation
Erreur introduite par le programmeur (bug).
Erreur algorithmique, erreur dans la gestion de la mémoire,

317
Procédure Générale de contrôle

 Contrôler la qualité de la solution au vu des critères précédents.

 Calculer en double précision.

 Définir une ou des solutions de référence (solutions analytiques, solutions


manufacturées et les comparer à la solution numérique obtenue  vérification 
On vérifie que le code de calcul calcule bien

 Comparer la solution numérique à des résultats expérimentaux  validation 


On vérifie que le code de calcul donne des résultats physique

318
Erreurs d’itérations

 Définir des variables cibles


• Efficacité
• Flux massique
• …

 Sélectionner un critère de convergence (par exemple les résidus)

 Tracer l’évolution des variables cibles en fonction du critère de convergence

 Spécifier la tolérance du critère de convergence de telle sorte que la variable


cible devienne indépendante de la tolérance choisie

 Contrôler la convergence monotone

 Contrôler la conservation de la masse et/ou de l’énergie 319


Erreurs d’itérations

Effet de la tolérance sur le résidu


• Calcul dans un compresseur
• 2nd ordre

Variation de la distribution de pression en fonction du Résidu

320
Erreurs d’itérations

321
Erreurs d’itérations

322
Erreurs de discrétisation

 Toutes les méthodes de discrétisation ont ce type d’erreur


• Volumes finis
• Eléments finis
• Différences finies

 C’est la différence entre la solution obtenue sur un maillage donné et


la solution analytique (quand il en existe une) ou celle obtenue sur un
maillage infiniment fin (si on a pas de solution analytique).

eh  f h  f exacte

323
Erreurs de discrétisation

Estimation de l’ erreur de discrétisation

 Test d’insensibilité du maillage.


On compare la solution pour différentes résolution du maillage.

324
Erreurs de discrétisation

325
Erreurs de discrétisation
Estimation de l’ erreur de discrétisation

 Ordre de discrétisation schéma 1er ordre et schéma 2nd ordre


 Quantités cibles: Nombre de Nusselt max
 Comparer la solution avec des schémas d’ordre différents

326
Erreurs de modélisation

 Dues à l’inadéquation de certains modèles empiriques


• Equations de base: Euler vs Navier-Stokes
• calcul stationnaire vs calcul instationnaire
• Choix du modèle de turbulence
• Modèle de combustion
• Modèle diphasique
• ….

 Caractérisées par la différence entre les données numériques et


expérimentales même lorsque toutes les autres sources d’erreurs ont été
contrôlées et sont devenues insignifiantes

327
Qualité du maillage

Le maillage doit être capable de capturer la physique importante


• les couches limites
• les transferts thermiques
• les sillages
• les ondes de chocs (position, intensité, inclinaison)
• de manière générale tous les gradients de toutes les variables dans tout
l’écoulement

328
Qualité du maillage
 Raffinement du maillage au voisinage des parois
Exemple du profil de vitesse sur une plaque plane

329
Qualité du maillage

 Nombre de volumes de contrôle ? Résolution


• Faible nombre de mailles vs grand nombre de mailles
• Plus de volumes de contrôle, plus grande précision , plus cher en
temps de restitution
• résolution suffisante (nombre de cellules suffisant) pour capturer la
physique, meilleurs détails.

 Type de maillage (Quad vs Triangles)


Maillage à base de triangles facile à générer vs maillage à base de Quad plus
compliqué à générer (algorithmes moins performants)

330
Qualité du maillage

Quad vs Triangles comparaison sur la précision


La direction de l’écoulement est bien connue à priori

Les Quad alignés avec l’écoulement sont plus précis que les Triangles (toute
proportion gardée c’est-à-dire avec la même densité)

Isocontours de la vitesse longitudinale


331
Qualité du maillage

Pour des écoulements sans direction d’écoulement dominante les Quads perdent
leur avantage sur les Triangles.

Isocontours de Température 332


Qualité du maillage
Il faut déterminer la stratégie de maillage en fonction de
différents objectifs et compromis à faire:

 précision
Quel est le skewness maximum et le rapport d’aspect maximum
que je tolère?

Skewness = obliquité Bon skewness Mauvais skewness

Bon rapport d’aspect L<1.2H Mauvais rapport d’aspect


333
Qu’est-ce qu’un bon maillage?
Bon Mauvais
 Cellules pas trop distordues
skewness (obliquité) <0.9

Une définition de l’obliquité d’un maillage est donnée par


:

334
Qu’est-ce qu’un bon maillage?

Bon Mauvais

 Pas trop étirées


rapport d’aspect <1.5

 Bonne transition
(entre 2 cellules adjacentes)
rapport d’expansion <1.2

335
Qu’est-ce qu’un bon maillage?

 Eviter les variations brusques dans la densité du maillage.


rapport d’expansion <1.2

Mauvais Bon

336

Vous aimerez peut-être aussi