Projet CFD : Naca 23012 Binôme n°3: ABIVEN David BREMILTS Benoît BREMILTS Benoît Projet CFD 2004.
Un exemple de Mécanique des Fluides Numériques (CFD) en ...
Transcript of Un exemple de Mécanique des Fluides Numériques (CFD) en ...
Un exemple de Mécanique des Fluides Numériques (CFD) en écoulement compressible
O. Boiron
Décembre 2016
3A Thermomécanique
2
Généralités
● Optimisation de forme
● Calcul/Dimensionnement d'efforts sur des structures
● Visualisation des champs de pression, vitesse, etc
● Calcul de physiques complexes :
● Ecoulements turbulents
● Ecoulements Compressibles
● Ecoulements réactifs - Combustion
● Ecoulements polyphasiques
● Ecoulements à surface libre
La Computational Fluid Dynamics est particulièrement utile pour :
3
Généralités
Implémentation d'un problème de CFD
Méthodologie en 5 étapes
● Analyse du problème :
● Création de la géométrie avec un modeleur
● Création du maillage avec un mailleur
● Définition des données du problème et résolution avec le solveur
● Exploitation des résultats avec le post-processeur
En 3A !!!
4
Généralités
Implémentation d'un problème de CFD
● Analyse du problème :
● Identification de la physique : ● Quelles sont les variables inconnues ? p,u, T, r, k, e, , ….● Modèle physique : équations, propriétés physiques, …
● Conditions aux limites : ● Identifier les conditions aux limites et leur type (Dirichlet, Neuman)● Mettre en correspondance les CL avec les traitements proposés aux frontières par
le solveur
● Domaine de calcul● Définir le domaine de calcul, i.e., l'espace physique dans lequel les équations
seront résolues. ● Sauf cas particulier les représentations informatiques de domaine de calcul sont
des espaces finis. Comment prendre en compte cette contrainte ?● Existence de symétries ?
5
Rentrée atmosphérique d'une cabine Apollo
Implémentation d'un problème de CFD compressible
● Rentrée atmosphérique Apollo
● Mach 3● Altitude 20 000m● T=220K, p=5 000 Pa
L=3,9mm=5800kgMasse bouclier = 850kg
● On s'intéresse à
● L'allure de l'écoulement autour de la cabine
● Pression et température sur le bouclier
● Forces et moments exercés sur l'engin
● Décélération subie● Flux de chaleur sur le bouclier
6
Le domaine de calcul
Domaine de calcul : W
20deg
M=3T=220Kp=5000pa
104,1m
69,4m
x
y
Etude 2D
Le domaine de calcul représente l'espace (ici en 2D) où circule le fluide et où seront résolues les équations du problème.
7
Le modèle physique
Equations à résoudre
∇ .(ru)=0r(u .∇)u=−∇ p+∇ .σvru∇ e=−p∇ .u+∇ .(k∇ T )+ϕ Dpr =RT−e=C vT
Air assimilé à un gaz parfait (g=1.4)
Dans le référentiel lié à l'engin :
M 1=3p1=5000 paT 1=220K
A l'amont :
Dans le référentiel lié à l'engin :
A l'aval (loin de l'engin) :M∞=3p∞=5000 paT∞=220K
(S) ∀ x∈W
Inconnues : r, p, T, u, v
Etude 2D planStationnaireFluide non pesant
8
Le problème discret et sa résolution
CFD : On substitue au problème continu un problème discret où l'on recherche les solutions du problème au centre de cellules, ou éléments, de forme triangulaire ou quadrangulaire (en 2D) ---→ Méthode des volumes finis (MVF)
(S)
Trouver |r1r2.rnp1p2.pnT 1T 2.T nu1u2.unv1v2.vn
|AX=B (1)
X
Tel que
Schéma itératif pour résoudre type Gauss Seidel (1)● On donne Xo solution initiale● On donne le nombre maximum d'itérations n● On définit la valeur du résidu pour test d'arrêt e,
X 0,X 1,X 2, .... , X i X i+1 , ... , X n
‖AX i−B‖<ϵ
Oui STOP
Non i=i+1STOP quand nombre maxi atteint
MVF
9
Le maillage
Maillage : réalisé par un logiciel dédié de maillage. ● Contient des éléments de forme triangulaire et quadrangulaire près des parois.
C'est un maillage qualifié d'hybride (mêle des éléments de formes différentes).● Environ 75000 éléments au total● 8 frontières (ou bords) où doivent être définies des conditions aux limites
Maillage raffiné près des parois (couche limite)
10
Les conditions aux limites
Conditions aux limites de type WALL
● En fluide parfait : u.n=0, paroi adiabatique● En fluide visqueux : u=0, paroi adiabatique ou à température ou flux imposé
paroi_sup
paroi_inf
bouclier
sas
11
Les conditions aux limites
Conditions aux limites de type PRESSURE_FAR_FIELD
● Calcule les valeurs de vitesse, Mach et température sur les faces à partir des conditions statiques amont.
sortie_lat
sortie_sup
sortie_inf
entree
12
Implémentation sous FLUENT/ANSYSChoix du solveur
● Démarrer fluent● Ouvrir un terminal● Éventuellement créer un répertoire : mkdir mon_repertoire● Aller dans ce répertoire : cd mon_repertoire● Lancer FLUENT : fluent -device X11
● Choix de la version● 2D● Double précision● Version Parallel 2 processes (sur 2 coeurs)
● Choix version du solveur● Density based (compressible)● 2D planar (cartésien)● Steady (stationnaire)
13
● Charger le maillage● Récupérer sur votre compte
http://perso.ec-m.fr/~oboiron/visible/apollo_20deg.msh
● File/Read/Mesh pour charger le fichier maillage● Mesh/Check pour vérifier son intégrité et sa conformité● Mesh/Scale pour passer en SI (le maillage est réalisé en cm)
On appuie 1 fois !!
Implémentation sous FLUENT/ANSYSChargement du maillage
FLUENT « travaille » en SI
14
● Choix des modèles physiques● Define/Models
● Energy → On● Laminar → Inviscid (fluide
parfait)
● Cell Zone Conditions● Operating conditions → Operating
pressure 5000 Pa (environ 20 000m d'altitude)
● Boundary conditions● Entree,
sortie_inf,sortie_lat,sortie_sup → M=3p=0x-comp=1, y_comp=0,T=220K
● Materials● Air (density constant → ideal gas)
Implémentation sous FLUENT/ANSYSDéfinition du problème physique
15
● Solution Methods● Formulation Implicite vs Explicite
● Explicite (conditionnellement stable mais convergence plus rapide et schémas plus robustes)
● Limiteurs de flux● Roe-Flux Difference Splitting
(schéma permettant de limiter les oscillations numériques engendrées par les discontinuités type choc en compressible)
● Spatial Discretization● Gradient : Green-Gauss Node Based● Vitesse : First Order Upwind
(décentré amont)
Implémentation sous FLUENT/ANSYSChoix des options numériques
Flux
Flux Flux
Cell centerNode element
Évaluation des flux sur les faces des éléments par interpolation à partir des valeurs aux nœuds (vs centre des cellules pour cell based)
16
● Solution controls● Schéma explicite soit conditionnellement stable.● Critère de Courant :
Implémentation sous FLUENT/ANSYSChoix des options numériques et initialisation
CFL=U Δ tΔ x
≈1U : vitesse Δt : pseudo pas de temps (le calcul est stationnaire)Δx : pas d'espace
Physiquement à chaque itération le fluide ne parcourt pas plus d'une cellule (élément).
Plus le nombre de Courant est faible (<1) plus la convergence est (en principe) facile mais en contre partie plus elle est lente.
On fixe le nombre de Courant à 0.2
● Solution initialization● Permet de définir Xo● Valeurs appliquées par défaut sur l'ensemble des éléments du domaine de calcul.● Choix un peu arbitraire soit 0 pour toutes les grandeurs soit on force la valeur de la
vitesse (M=3) et de la température (220K) amonts sur l'ensemble des cellules. ● Pour connaître la valeur de la vitesse à partir du Mach de l'entrée : Compute from :
entree
17
● On sauvegarde !!!● File/Write/Case
● On lance le calcul : Run calculation● Nombre itérations = n = un nombre important !!
genre 1000● Reporting interval : 1 : fréquence du monitoring du
calcul● Feu !! Calculate
Implémentation sous FLUENT/ANSYSRun !!
● Evolution des résidus (e, ) en fonction du nombre d'itérations
● Par défaut arrêt automatique si tous les résidus sont inférieurs à 10-3
● On arrête manuellement le calcul lorsque les résidus saturent (ne diminuent plus, surtout celui de la pression (continuity en blanc)
18
● Arrêt du calcul● Models laminar → Laminar
● Solution methods● Implicite
● Solution controls● Nombre de Courant = 0.2
● On relance le calcul : Run calculation● Surtout ne pas initialiser !!
● Arrêt du calcul lorsque les résidus ne diminuent plus
Implémentation sous FLUENT/ANSYSAmélioration de la convergence
19
● Graphics & Animation● Contours● Pour avoir des
isocontours → Filled coché
Implémentation sous FLUENT/ANSYSPost traitement
Isosurfaces de pression statique
Isosurfaces de Mach
● Calcul de la traînée et de la portance● Report/Forces
20
● Calcul du Cx et du Cz, de la décélération subie par les astronautes????
Implémentation sous FLUENT/ANSYSPost traitement et amélioration du maillage
● Position du choc mal définie car maillage trop grossier● Choc mal « intercepté » par le maillage
● Solution, raffiner le maillage au voisinage du choc
Maillage adaptatif : menu Adapt
● Choix d'un citère de raffinement ● Adapt/Gradient Static pressure
● Adapt/Gradient Compute & Apply
21
Implémentation sous FLUENT/ANSYSAmélioration du maillage par maillage adaptatif
● Recherche de la valeur seuil du critère de raffinement à l'aide des isocontours
● Graphics/Contours● Contours of Adaption/Adaption function● Désélectionner Autorange (important) puis Compute
● Chercher la valeur min de l'Adaption function (qui est en fait grad p) pour que seul le choc apparaisse en appuyant sur Display
● Retour sur le menu Adapt/Gradient pour fixer cette valeur dans Refine Threshold puis Dynamic on et Apply
● Dynamic : Le code va effectuer toutes les 20 itérations un découpage des éléments sur lesquels grad p est supérieur à la valeur seuil définie
● Relancer le code pour 100 itérations (Run Calculation)
22
Implémentation sous FLUENT/ANSYSAmélioration du maillage par maillage adaptatif
● Après les 100 itérations désactiver le maillage adaptatif
● Adapt/Gradient Dynamic off → Apply
● Relancer sur quelques centaines d'itérations jusqu'à convergence
● Position du choc mieux définie● Meilleure interception des
gradients● Meilleure stabilité● Possibilité d'augmenter l'ordre
des schémas de discrétisation