22
Un exemple de Mécanique des Fluides Numériques (CFD) en écoulement compressible O. Boiron Décembre 2016 3A Thermomécanique

Un exemple de Mécanique des Fluides Numériques (CFD) en

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 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

Page 2: Un exemple de Mécanique des Fluides Numériques (CFD) en

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 :

Page 3: Un exemple de Mécanique des Fluides Numériques (CFD) en

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 !!!

Page 4: Un exemple de Mécanique des Fluides Numériques (CFD) en

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 ?

Page 5: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 6: Un exemple de Mécanique des Fluides Numériques (CFD) en

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.

Page 7: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 8: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 9: Un exemple de Mécanique des Fluides Numériques (CFD) en

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)

Page 10: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 11: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 12: Un exemple de Mécanique des Fluides Numériques (CFD) en

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)

Page 13: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 14: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 15: Un exemple de Mécanique des Fluides Numériques (CFD) en

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)

Page 16: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 17: Un exemple de Mécanique des Fluides Numériques (CFD) en

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)

Page 18: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 19: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 20: Un exemple de Mécanique des Fluides Numériques (CFD) en

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

Page 21: Un exemple de Mécanique des Fluides Numériques (CFD) en

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)

Page 22: Un exemple de Mécanique des Fluides Numériques (CFD) en

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