coursall2_2

Embed Size (px)

Citation preview

  • 7/21/2019 coursall2_2

    1/69

    Initiation a la simulation numerique

    en mecanique des fluides :

    Elements danalyse numerique.

    Cours ENSTA MF307

    6 juin 2003

    Frederic DABBENE et Henri PAILLERE

  • 7/21/2019 coursall2_2

    2/69

    Resume

    Nous presentons dans ce rapport des elements danalyse numerique necessaires a

    la realisation de simulations numeriques en mecanique des fluides. Les notes ducours donne a lENSTA depuis 1997 en ont ete le catalyseur.

    Apres avoir mis en situation les differents ingredients intervenant dans un calcul,les problemes modeles sous-tendant les equations de Navier-Stokes sont abordes.

    La discretisation et les contraintes de stabilite associees aux equations de typeelliptique, parabolique ou hyperbolique sont presentes.

  • 7/21/2019 coursall2_2

    3/69

    TABLE DES MATIERES Cours ENSTA MF307

    Table des matieres

    Introduction 6

    1 Introduction a la simulation numerique en mecanique des fluides 8

    1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    1.2 Genese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    1.3 Algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    1.3.1 Notions de base et definitions . . . . . . . . . . . . . . . . 9

    1.3.2 Non-linearite . . . . . . . . . . . . . . . . . . . . . . . . . 10

    1.3.3 Probleme transitoire et schemas explicite/implicite . . . . 10

    1.4 Jeu de donnees . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    1.5 Maillage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    1.5.1 Analyse descendante . . . . . . . . . . . . . . . . . . . . . 12

    1.5.2 Realisation ascendante . . . . . . . . . . . . . . . . . . . . 131.6 Castem 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    1.6.1 Gibiane . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    1.6.2 Operateurs . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    1.6.3 Objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    1.6.4 Operateur DOMA . . . . . . . . . . . . . . . . . . . . . . 17

    1.6.5 Operateur EQEX . . . . . . . . . . . . . . . . . . . . . . . 19

    2 Equations de Navier-Stokes, nature dune EDP, discretisation 242.1 Modelisation dun fluide Newtonien . . . . . . . . . . . . . . . . . 24

    2.1.1 Derivee particulaire . . . . . . . . . . . . . . . . . . . . . . 24

    2.1.2 Equation de conservation de la masse . . . . . . . . . . . . 25

    2.1.3 Equation de conservation de la quantite de mouvement . . 26

    2.1.4 Equation de conservation de lenergie . . . . . . . . . . . . 27

    Initiation a la simulation numerique en mecanique des fluides 3

  • 7/21/2019 coursall2_2

    4/69

    TABLE DES MATIERES Cours ENSTA MF307

    2.1.5 Lois detat . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

    2.1.6 Forme conservative des lois de conservation . . . . . . . . . 28

    2.2 Nature des EDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    2.2.1 Probleme elliptique . . . . . . . . . . . . . . . . . . . . . . 29

    2.2.2 Probleme parabolique . . . . . . . . . . . . . . . . . . . . 302.2.3 Probleme hyperbolique . . . . . . . . . . . . . . . . . . . . 31

    2.2.4 Liens avec les equations de Navier-Stokes . . . . . . . . . . 33

    2.3 Principales methodes de discretisation . . . . . . . . . . . . . . . 33

    2.3.1 Discretisation spatiale et temporelle . . . . . . . . . . . . . 34

    2.3.2 Differences finies . . . . . . . . . . . . . . . . . . . . . . . 34

    2.3.3 Elements finis . . . . . . . . . . . . . . . . . . . . . . . . . 35

    2.3.4 Volumes finis . . . . . . . . . . . . . . . . . . . . . . . . . 36

    3 Convergence et conditions aux limites 38

    3.1 Convergence, stabilite et consistance . . . . . . . . . . . . . . . . 38

    3.1.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    3.1.2 Consistance du schema differences finies pour lequation dela chaleur . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    3.1.3 Stabilite du schema differences finies pour lequation detransport . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    3.1.4 Discretisation temporelle et approximants de Pade . . . . . 45

    3.1.5 Etude de la stabilite par la methode de Von Neumann . . 46

    3.1.6 Consistance et stabilite en volumes finis . . . . . . . . . . 48

    3.2 Imposition des conditions aux limites de type Dirichlet . . . . . . 49

    3.2.1 Methode de substitution . . . . . . . . . . . . . . . . . . . 49

    3.2.2 Methode de penalisation . . . . . . . . . . . . . . . . . . . 50

    3.2.3 Utilisation dun multiplicateur de Lagrange . . . . . . . . 50

    4 Methode des elements finis 52

    4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

    4.1.1 Elements geometriques . . . . . . . . . . . . . . . . . . . . 52

    4.1.2 Fonctions dinterpolation et espaces associes . . . . . . . . 53

    4.1.3 Principe de la methode des elements finis . . . . . . . . . . 54

    4.2 Espaces discrets de plus bas degre . . . . . . . . . . . . . . . . . . 54

    Initiation a la simulation numerique en mecanique des fluides 4

  • 7/21/2019 coursall2_2

    5/69

    TABLE DES MATIERES Cours ENSTA MF307

    4.2.1 EspaceV0 L2() . . . . . . . . . . . . . . . . . . . . . . 554.2.2 Element W1 H1() . . . . . . . . . . . . . . . . . . . . . 55

    4.3 Resolution dun probleme modele par elements finis . . . . . . . . 57

    4.4 Elements de reference . . . . . . . . . . . . . . . . . . . . . . . . . 59

    4.4.1 Elements de reference . . . . . . . . . . . . . . . . . . . . . 604.4.2 Integrations de polynomes . . . . . . . . . . . . . . . . . . 61

    4.4.3 Matrice Jacobienne . . . . . . . . . . . . . . . . . . . . . . 61

    4.4.4 Transformation des gradients . . . . . . . . . . . . . . . . 62

    4.4.5 Discretisation temporelle . . . . . . . . . . . . . . . . . . . 63

    4.5 Decentrement en elements finis . . . . . . . . . . . . . . . . . . . 63

    4.5.1 Schemas SUPG, SUPGDC et viscosite artificielle de Johnson 63

    4.5.2 Evaluations des differents parametres . . . . . . . . . . . . 65

    4.6 Formation de choc . . . . . . . . . . . . . . . . . . . . . . . . . . 66

    Bibliographie 69

    Initiation a la simulation numerique en mecanique des fluides 5

  • 7/21/2019 coursall2_2

    6/69

    TABLE DES MATIERES Cours ENSTA MF307

    Introduction

    Ce rapport regroupe la premiere partie des notes du cours MF307 intitule Ini-tiation a la simulation numerique en mecanique des fluides dispense a lEcoleNationale Superieure de Techniques Avancees depuis 1997 dans le cadre du mo-dule B2 Dynamique des fluides : Modelisation numerique.

    Lobjectif de ce cours est dinitier les etudiants de troisieme annee de l E.N.S.T.A.a la simulation numerique en mecaniques des fluides et de les preparer a utiliser,

    voire developper, des logiciels de CFD (Computational Fluid Dynamics).

    Le cours se deroule sur dix-huit demi-journees : les douze premieres sontconsacrees aux notions theoriques suivies par des travaux pratiques ; les sixdernieres a la realisation dun projet. Le support informatique permettantla realisation des travaux pratiques et des projets est le logiciel Castem2000developpe au sein du Service dEtudes Mecaniques et Thermiques du C.E.A..Un recueil dexemples commentes constitue la documentation associee a la partiefluide de Castem2000 et illustre quelques uns des themes susceptible detre traitesa laide du logiciel.

    Nous presentons dans ce cours differentes methodes de discretisation en espace

    (differences finies, elements finis et volumes finis), en temps (schemas expliciteset implicites associes aux approximants de Pade) ainsi que les modelisationsassociees a differents regimes decoulement (incompressible/compressible, vis-queux/non visqueux, monophasique/diphasique, etc).

    Dans ce document, seuls sont abordes les elements de base en analyse numeriquepermettant la resolution numerique des ecoulements fluides (quatre premieresdemi-journees). Chaque chapitre correspond a un cours :

    le chapitre 1 introduit les principes generaux, la construction dun maillage etpresente Castem2000.

    le chapitre 2 introduit les differents problemes modeles scalaires associes auxequations aux derivees partielles elliptiques, paraboliques et hyperboliquesainsi que le lien entre ces problemes modeles et les equations de Navier-Stokes. Lequation de la chaleur permet dillustrer les principales methodesde discretisation spatiale habituellement rencontrees.

    le chapitre 3 aborde les notions de convergence et de conditions aux limitespour les differents problemes modeles. Le probleme de transport dun champscalaire par diffusion-convection permet dillustrer ces differentes notions. Ladiscretisation, tant en temps quen espace de lequation de transport est realisee,

    Initiation a la simulation numerique en mecanique des fluides 6

  • 7/21/2019 coursall2_2

    7/69

    TABLE DES MATIERES Cours ENSTA MF307

    dans ce chapitre, par differences finies. le chapitre 4 est consacre a la discretisation par elements finis et au

    decentrement des termes convectifs. Le transport convectif dun champ sca-laire permet dillustrer la notion de decentrement.

    A terme, ce document sera complete par les modelisations associees a differentsregimes decoulement. Le support de cours des parties non encore finalisees sera

    constitue des photocopies de transparents.

    Nous tenons a remercier notre collegue Mr Lamoureux pour sa participation a lamise en forme de ces notes de cours.

    Initiation a la simulation numerique en mecanique des fluides 7

  • 7/21/2019 coursall2_2

    8/69

    Cours ENSTA MF307

    Chapitre 1

    Introduction a la simulation

    numerique en mecanique des

    fluides

    1.1 Introduction

    La CFD, Computational (or Colored) Fluid Dynamics, se situe au carrefour deplusieurs disciplines scientifiques : la physique (mecanique des fluides, du solide, ...) ; les mathematiques (analyse numerique, ...) ; linformatique (programmation, utilisation, ...).Il est rare qua lissue de sa formation un individu possede ces trois competences.Lobjectif de ce cours est dillustrer a laide dun certain nombre dexemples la

    facon dont ces trois domaines interagissent en CFD.

    Le support informatique de ce cours sera la partie mecanique des fluides du codeCastem 2000 que nous developpons au CEA.

    Avant de presenter ce logiciel, il nous apparat important daborder la genese, larealisation et la conduite dun calcul de mecanique des fluides.

    1.2 Genese

    Au debut etait la question : Que se passe-t-il si ... ; Quand ... ; Comment ... .On identifie alors les systemes physiques a considerer, les phenomenes physiquesau sein de chaque systeme ainsi que les interactions entre ces differents systemes.

    Il est rare que lensemble des phenomenes physiques mis en evidence puissent etreconsideres. On doit alors sinterroger sur limportance relative de ces phenomenes

    Initiation a la simulation numerique en mecanique des fluides 8

  • 7/21/2019 coursall2_2

    9/69

    1.3. ALGORITHME Cours ENSTA MF307

    afin de simplifier le modele obtenu : Peut-on negliger les effets visqueux ? Compressibilite/ Incompressibilite / Dilatabilite ? Melange homogene / multi-especes / multi-phasiques ? ...A lissue de cette analyse, on connat la(les) equation(s) qui va(vont) constituer

    notre modele. Les competences physiques ne serviront presque plus jusqua lana-lyse des resultats.

    Il faut maintenant faire appel a des competences numeriques afin de choisir lal-gorithme de resolution le mieux adapte au probleme obtenu.

    1.3 Algorithme

    1.3.1 Notions de base et definitions

    Lobjectif des methodes de discretisation est de parvenir, in fine, a un systemematriciel le plus simple possible a inverser :

    Ax= b

    ou A est une matrice ;x linconnue cherchee et ble second membre independantde linconnue x.

    La methode utilisee est dite explicitesi la matrice A est diagonale et a coefficientindependant de linconnue x. On connat alors directement explicitement la solution x puisque x = b/A, labus de notation division par une matrice !

    signalant le caractere diagonale de la matrice A. Sinon, la methode est dite

    implicite.Le probleme a traiter est dit lineaire si les coefficients de la matrice A sontindependants de linconnue x, non-lineairesinon.

    En general, les problemes a traiter sont non-lineaires. Comme on ne sait inverserque les systemes matriciels lineaires, lemploi de techniques de linearisation estincontournable.

    La plupart de ces methodes sont des variantes de la methode du point fixe (oumethode de Picard). Afin de resoudre

    A(x)x = b

    la methode du point fixe consiste a :

    1. choisir a priori une valeur initiale x0 de linconnue ;

    2. resoudre le probleme lineaire A(xk)xk+1= b ;

    3. tant que xk retourner a letape precedente (avecxk = xk+1 xk).Precisons que la methode du point fixe peut ne pas converger puisque

    Initiation a la simulation numerique en mecanique des fluides 9

  • 7/21/2019 coursall2_2

    10/69

    1.3. ALGORITHME Cours ENSTA MF307

    la fonctionnelle associee a A doit etre contractante (ce qui dans la pratique esttres delicat a demontrer) ;

    le choix de x0 est souvent crucial pour assurer la convergence de lalgorithme.Indiquons enfin que la forme presentee est celle qui est la plus souvent codee. Unobservateur attentif notera que le test de convergence au point 3 ne garantit pasque la solution obtenue soit la solution du point fixe. On teste en effet la vitesse

    de convergence des iteres vers la solution du probleme non lineaire et non pas laverification, a une tolerance pres, du probleme non lineaire. On devrait tester leresiduRk defini par

    Rk =b A(xk)xkCompte tenu de la definition de Rk on peut remarquer que Rk et xk sont liespar la relation

    Rk =A(xk)xk

    1.3.2 Non-linearite

    Exemple type de non-linearite dans le cas scalaire

    Considerons comme probleme scalaire modele lequation de la chaleur en regimepermanent :

    div(T) =Sou T designe la temperature, la conductivite thermique et S un terme sourceindependant de T.

    Si = (x), le probleme est lineaire. Si= (x, T), le probleme est non-lineaire.Dans le cas dune equation scalaire, la dependance des proprietes physiques alinconnue cherchee est une cause importante de non-linearite.

    Exemple de non linearite dans le cas systeme

    Les causes essentielles de non linearite dans le cas systeme sont comme dans le cas scalaire, la dependance des proprietes physiques aux incon-

    nues ; les termes faisant apparatre des produits entre inconnues :u u, uh....Ces deux sources de non-linearite sont bien entendu presentes dans les equationsdEuler et de Navier-Stokes.

    1.3.3 Probleme transitoire et schemas explicite/implicite

    Dans le casde problemes transitoires(evolutions des quantites cherchees en fonc-tion du temps) deux types de schema sont possibles :

    Initiation a la simulation numerique en mecanique des fluides 10

  • 7/21/2019 coursall2_2

    11/69

    1.3. ALGORITHME Cours ENSTA MF307

    des schemas dits explicites; des schemas dits implicites.Un schema est dit explicite si la solution discrete x au temps tn+1, notee xn+1,ne depend pas de xn+1. Quel que soit le point k de la discretisation spatiale onconnait explicitement la valeur de la solution au point k au temps tn+1 :

    xn+1k =f(x

    n

    , xn1

    , donnees).

    Linconvenient des schemas explicites reside dans la limitation du pas de tempspar des contraintes de stabilite numerique.

    Un schema non-explicite est implicite et la solution x au temps tn+1 depend dexn+1. On doit donc resoudre un systeme matriciel avec une matrice non diagonale :

    Axn+1 =f(xn, xn1, donnees).

    Parmi les schemas implicites, on utilisera dans ce cours ceux qui possedent desproprietes de stabilite qui permettent de saffranchir de contrainte sur le pas detemps lorsque on les applique a un probleme lineaire. Par abus de langage onappellera schemas implicites cette classe de schemas numeriques.

    Le rang de la matrice A etant en general eleve il est proportionnel au nombrede points du maillage levaluation de A1 est couteuse en terme de CPUet de stockage. Levaluation dun pas de temps (calcul de xn+1 a partir de xn)coute donc beaucoup plus cher avec un schema implicite, sans compter le surcouteventuel de la linearisation si le probleme est non lineaire. Par contre, le pas detemps t= tn+1 tn nest pas limite en implicite par des contraintes de stabilitelineaire contrairement a lexplicite.

    Soient tmax la duree du phenomene etudie et N le nombre de pas de tempsnecessaire pour atteindre tmax. N etant impose par des contraintes de stabiliteen explicite alors quil est librement fixe par lutilisateur en implicite, on obtient(pour un utilisateur normalement constitue)

    Nimplicite < Nexplicite.

    Comme dautre part :

    CP Uimplicite > CPUexplicite,

    on voit que le choix entre explicite et implicite nest pas a priori evident, tous cescriteres dependant bien entendu du probleme a traiter et du nombre de mailles.

    Si le choix de timplicite nest pas contraint par des problemes de stabilite, descontraintes de precision imposent detre raisonnable :

    timplicite

  • 7/21/2019 coursall2_2

    12/69

    1.4. JEU DE DONNEES Cours ENSTA MF307

    1.4 Jeu de donnees

    Les analyses physique et numerique du probleme etant effectuees, on peut passer ala realisation du calcul. Quel que soit le logiciel utilise, on doit construire un jeu dedonnees decrivant le probleme a resoudre. Trois types dinstructions apparaissentau sein du jeu de donnees : la description geometrique ; la description des modeles physique et numerique ; le trace des resultats en vue de lanalyse physique.Il est souhaitable que ces trois parties soient distinctes. Cela oblige a reflechiravant daller sur la machine, ce qui nest pas plus mal. Il est inefficace de nepenser au post-traitement quune fois les calculs effectues et sauves sur disque.Les ennuis commencent lorsque lon essaie dextraire les informations a visualisersur une zone qui na pas ete identifiee au prealable.

    De plus, la zonation du domaine de calcul en essayant didentifier les zonesinteressantes permet detre beaucoup plus efficace dans le cas ou loutil uti-

    lise ne dispose pas dun mailleur adaptatif et ou cest lutilisateur qui fixe, unefois pour toute en debut de calcul, la densite de mailles. Par essais successifs, onpeut diminuer grandement le nombre de mailles necessaires a la realisation ducalcul, la zonation permettant de se focaliser sur les parties sensibles du domainea mailler.

    1.5 Maillage

    Il est rare quun seul calcul soit suffisant. Il est souhaitable deffectuer au moinsdeux calculs sur des maillages de finesses differentes afin detudier la sensibilite

    des resultats au maillage de meme avec le pas de temps dans le cas transitoire.

    Compte tenu du cout engendre par le redecoupage des mailles, seules les zonesou cela bouge seront redecoupees. Meme si la CAO aide beaucoup (exempleFLUENT...), il est important didentifier ces zones a priori au moment de laconstruction du maillage.

    Cest pourquoi la realisation dun maillage est delicate. Lutilisation de latechnique dAnalyse descendante-Realisation ascendante offre une demarchesystematique et permet de minimiser les efforts et les erreurs.

    1.5.1 Analyse descendante

    Lanalyse descendante consiste a identifier au sein du tout des parties. Lanalysedun volume tridimensionnel conduit ainsi a differentes sous parties dont lentitela plus petite est le point. Le processus suivant presente la procedure a suivre :

    1. Volume = Volume elementaire2. Volume elementairei Volume elementairej = Surfaceij

    Initiation a la simulation numerique en mecanique des fluides 12

  • 7/21/2019 coursall2_2

    13/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    3. Surfaceij = Surface elementaire4. Surface elementairek Surface elementairel = Segmentkl5. Segmentkl = Segment elementaire6. Un segment elementaire est caracterise par

    2 points extremites

    1 decoupageA lissue de cette analyse, tous les points importants supports dun maillage filairede la geometrie sont identifies. De plus, chaque entite nest identifiee quune foisce qui evite les problemes de point double.

    Lexperience montre quil est raisonnable de consigner cette analyse sur papier.Nos anciens avaient bien des cahiers de manip. Ce nest pas parce que lon estpasse a lere informatique que lon peut sen passer (probleme de tracabilite).

    1.5.2 Realisation ascendante

    La realisation ascendante consiste simplement a reconstruire le tout avec les par-ties. Il suffit de derouler a lenvers la procedure precedente :

    1. construction des points.

    2. construction des segments elementaires.

    3. construction des segments.

    4. construction des surfaces elementaires.

    5. construction des surfaces.

    6. construction des volumes elementaires.

    7. construction du volume.

    1.6 Castem 2000

    Castem 2000est un code de calcul de type bote a outils dont nous utiliserons lescomposants permettant la resolution de problemes de mecanique des fluides parelements finis et volumes finis.

    Le langage de donnees GIBIANEpermet de definir : le maillage, les modeles physique et numerique,

    les post-traitements.Lensemble des instructions est regroupe dans un fichier constituant le jeu dedonnees.

    Une instruction correspond a la realisation dune tache elementaire par unoperateur. Chaque tache est en effet decomposee en taches elementaires. Parexemple,

    Initiation a la simulation numerique en mecanique des fluides 13

  • 7/21/2019 coursall2_2

    14/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    OPTI DIME 2 ELEM QUA4 ; definition du contexte.P1 = 1. 1.; P2 = 1. 2.; creation de 2 points.P1P2 = DROI P1 10 P2 ; creation dune ligne.TRAC P1P2 ; visualisation.

    Ces quelques lignes montrent la logique qui sous-tend Castem. On commence par

    creer deux points P1 et P2, puis une ligne composee de 10 segments que lontrace. Le nom associe a chaque objet (a gauche du signe egal) est choisi librementpar lutilisateur.

    Nous allons dans les differentes sections de ce paragraphe decrire les differentsingredients necessaires a la construction dun jeu de donnees : le langage GI-BIANE, la notion doperateur, les principaux objets, les operateurs DOMA etEQEX associes respectivement a la construction des differents maillages utiliseset a la description du probleme de mecanique des fluides a resoudre.

    1.6.1 Gibiane

    Les principales regles syntaxiques de GIBIANE sont les suivantes :

    1. Le ; termine une instruction.

    2. Une instruction fait au plus 9 lignes.

    3. Une ligne fait au plus 72 caracteres.

    4. Une ligne peut contenir plusieurs instructions.

    5. Les lignes de commentaires debutent par.6. Seules les 4 premieres lettres des operateurs sont significatives :

    (TRAC TRACER, DEBP DEBPROC...).7. Une procedure doit etre orthographiee avec toutes ses lettres.8. Une instruction est decodee/interpretee de gauche a droite :

    a = 1 + 2 3 ;LIST a ; a = 9b= 1 + (2 3) ;LIST b ; b = 7

    Les +, , / , ... sont des operateurs au meme titre que LIST.9. La longueur du nom dun objet est au plus 8 caracteres. Cest le signe = qui

    permet dassocier un nom a un objet. Il est conseille dajouter un chiffre aunom des objets afin de ne pas ecraser un operateur :

    TRAC = 1 + 2 + 3;et loperateur TRAC nest plus accessible...

    1.6.2 Operateurs

    On distingue trois types doperateurs :

    Initiation a la simulation numerique en mecanique des fluides 14

  • 7/21/2019 coursall2_2

    15/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    Lesdirectives(absence de = dans linstruction) comme par exemple la direc-tive de tracer TRAC. La syntaxe generique dune directive est donc :

    DIRECTIVE OPERANDES ; Lesoperateurscomme DROI dont la syntaxe est :

    RESULTAT(S) = OPERATEUR OPERANDES ;

    Lesproceduresqui sont des sous-programmes ecrits en langage GIBIANE et quisutilisent comme les directives et les operateurs (enrichissement des possibilitespar creation de MACRO) :

    DEBP MSUR ;ARGU P1POINT P2POINT P3POINT P4POINT ;P1P2 = DROI P1 10 P2 ;P2P3 = DROI P2 10 P3 ;P3P4 = DROI P3 10 P4 ;P4P1 = DROI P4 10 P1 ;MAIL1 = DALLER P1P2 P2P3 P3P4 P4P1 ;FINP MAIL1;

    Les procedures peuvent rendre un(des) resultat(s) ou modifier lun des argu-ments. De ce fait une procedure sappelle comme un operateur ou comme unedirective suivant limplementation retenue par lutilisateur.

    Exercice : La directive INFO permet dafficher a lecran la notice dunoperateur (essayer INFO INFO). Pour chacun des operateurs de la procedureci-dessus, consultez sa notice puis essayez de comprendre le role de la procedureMSUR.

    Gibiane etant un langage, il existe des operateurs de test, de boucle ... dont onpourra consulter la notice :

    SI, SINO, FINS, REPE, QUIT, FIN,

    DEBP, FINP, OBTE, MESS, TEXT.Ces operateurs permettent decrire des algorithmes et offrent a lutilisateur unenvironnement de modelisation.

    1.6.3 Objets

    Chaque OPERANDE est type. Aux objets Fortran habituels (entier, flottant,mot, logique) ont ete ajoutes des objets specifiques a Castem 2000. Nous allonsindiquer les principaux operateurs associes aux objets susceptibles detre mani-pules dans le cadre de ce cours,

    A savoir: Loperateur LIST voir sa notice liste lobjet donne en argumentet precise son type.

    Objets de type Fortran

    Entier, flottant et mot: ils sont crees simplement par :

    Initiation a la simulation numerique en mecanique des fluides 15

  • 7/21/2019 coursall2_2

    16/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    a = 1 ;

    b = 1.;

    c1 = MONMOT ;

    c2 = monmot ;

    La difference de syntaxe entre la definition de c1 et c2 est la suivante : lorsqueun mot est entre quotes (), la distinction minuscule/majuscule est conservee.

    Lorsque le mot nest pas entre quotes, la chane de caracteres est transformee enmajuscules. Pour sen convaincre, listez le contenu de c1 et c2 apres avoir tapeles deux lignes de definitions.

    Linteret des quotes est egalement de proteger le nom des operateurs dans lesprocedures. Un utilisateur na en general quune connaissance partielle de Castem2000. Ne connaissant pas tous les operateurs de Castem 2000, il peut ecraserpar megarde un operateur en nommant un objet par le nom dun operateur.Si loperateur ainsi ecrase est appele par une procedure, tout se passera biensi loperateur est appele entre quotes ; au mieux, une erreur sera detectee siloperateur nest pas protege.

    Les logiquessont crees par :a = VRAI ;

    b = FAUX ;

    et via les operateurs :

    , EG, EG, NEG, ET, OU, NON.Il ne faut surtout pas mettre les initialisations VRAI et FAUX des booleens a etb entre quotes (). Sinon, ils sont consideres comme des objets de type MOTS etnon comme des LOGIQUES.

    Objets de type LIST... et EVOLUTION

    Les listenti, listreel et listmotsont des listes dentiers, de reels et de mots (creesrespectivement par les operateurs LECT, PROG et MOTS ).

    Les listes de reels sont utilises pour creer des evolutionsqui peuvent etre traceesavec DESS. Un objet evolution, cree par EVOL, contient deux listreels, lepremier listreel etant associe aux abscisses, le deuxieme aux ordonnees :

    LISTX = PROG 0. PAS 1 9. ;

    LIST1 = PROG 0. PAS 0.5 NPAS 5 4*2.5 ;

    EVOL1 = EVOL MANU t LISTX f(t) LIST1 ;

    DESS EVOL1 ;

    Objets associes aux maillages

    Lobjet de type pointcontient un point de lespace de travail (en 2D si OPTIDIME 2 ; en 3D si OPTI DIME 3 ). Pour creer un point il suffit dassocierun nom avec les coordonnees du point (voir egalement les operateurs POIN etBARY).

    Initiation a la simulation numerique en mecanique des fluides 16

  • 7/21/2019 coursall2_2

    17/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    Lobjetmaillagecontient des maillages (volumiques, surfaciques, lineiques) et/oudes collections de points. Les principaux operateurs de maillage sont : creation de droites (au sens lignes) : DROI, CERC , COTE , CONT ; creation de surfaces : SURF, DALL, TRAN, ROTA, PLUS, DEPL ; creation de volumes : PAVE , VOLU , REGE.

    Objet TABLE

    Lobjet tablepermet de creer des structures de donnees arborescentes (creationpar loperateur TABLE ). On accede a un objet contenu dans une table enprecisant lindice sous lequel il est range.

    Deux objets de type table sont tres utilises en mecanique des fluides : lunecontient lensemble des informations geometriques, lautre les modelisations phy-sique et numerique (creees par les operateurs DOMA et EQEX).

    A savoir : Depuis la version 2000 de Castem, lobjet modele est utilise enmecanique des fluides et contient les informations geometriques necessaires a laresolution des problemes de mecanique des fluides. Loperateur DOMA nest plusutilise pour creer la table contenant les informations geometriques si on passe parlobjet modele.

    Objet CHPOINT (ou CHPO)

    Le dernier objet important est lobjet CHPO (champ par point) qui associe achaque point dun maillage de points une ou plusieurs valeurs.

    Afin de pouvoir distinguer les differentes composantes des champs vectoriels,chaque composante de meme rang est identifiee par un nom. Les noms sont,

    soit choisis par lutilisateur, soit determines par loperateur qui cree le chpointconsidere.

    Les chpoints ont une nature qui permet dindiquer si la quantite discretiseerepresentee par le chpoint est intensive ou extensive. Ainsi, les operateursalgebriques +,,... fournissent les resultats attendus. Loperateur ET per-met egalement de manipuler les chpoints. Suivant la nature des chpoints, lesoperateurs ET et + conduisent a des resultats differents. On se reportera a lanotice de ces operateurs pour de plus amples informations.

    Exercice : tracez une courbe representant levolution de la coordonnee x lelong dune ligne dun maillage (voir en particulier loperateur COOR).

    1.6.4 Operateur DOMA

    Loperateur DOMA permet de recuperer les informations contenues dans la tablede sous-type DOMAINE ou dans lobjet modele afin de pouvoir manipuler un en-semble coherant dinformations geometriques utilisees en mecanique des fluides.Dans les versions anterieurs a la version 2000 de Castem, loperateur DOMA cree

    Initiation a la simulation numerique en mecanique des fluides 17

  • 7/21/2019 coursall2_2

    18/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    physiquement cette TABLE. Depuis, cette structure nest plus exhibee. Cest lob-jet modele NAVIER STOKES qui gere cet objet. Au dela de ces considerationsinformatiques, notons que lobjet DOMAINE a trois fonctions : structurer les classes de points supports des chpoints, completer les connectivites, conserver des informations geometriques afin de ne pas avoir a les recalculer a

    chaque utilisation (preconditionnement).Lesclasses de pointssont au nombre de trois lorsque lon utilise les elements finis(au sens large) de plus bas degre : les SOMMETS des elements associes aux champsH1, les CENTRES des elements associes aux champsL2, les FACES des elements associes aux champsHdiv etHrot.Depuis la version 2000 de Castem, lelement QUAF regroupe lensemble de cessupports, chacun dentre eux etant toujours accessible individuelement.

    Un CHPO CENTRE contient le plus souvent la valeur moyenne du champ surlelement (aspect volumes finis), un CHPO FACE la valeur moyenne sur la faceconsideree (un flux par exemple), un CHPO SOMMET la valeur du champ auxSOMMETS (aspect elements finis).

    La table DOMAINE est creee par loperateur DOMA a partir dun objetmaillage construit au prealable.

    Exercice : Creer un maillage et construire la table DOMAINE associee. Lister et tracer le contenu de la table DOMAINE.

    Pour creer un CHPO, il faut toujours preciser le support geometrque associe.Cest pourquoi les indices CENTRE, FACE et SOMMET de la table DOMAINEsont tres utilises.

    Dans lexemple suivant, nous creons un champ vectoriel de composantes UX,UY identiquement nul et de support les CENTREs de gravite des elements.

    U1 = KCHT DOM1 VECT CENTRE (0. 0.) ; U2 = MANU CHPO DOM1.CENTRE 2 UX 0. UY 0. ;Des operateurs de projection permettent de transformer un CHPO CENTRE enCHPO SOMMET et inversement : voir les operateurs NOELet ELNO.

    Initiation a la simulation numerique en mecanique des fluides 18

  • 7/21/2019 coursall2_2

    19/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    1.6.5 Operateur EQEX

    La resolution des problemes de mecanique des fluides est realisee par la procedureEXEC. Cette procedure exploite le contenu dune table creee par loperateurEQEX. Cette table contient les descriptions physique et numerique du problemetraite.

    Nous allons illustrer le fonctionnement de loperateur EQEX et lutilisation de laprocedure EXEC a laide de lexemple de lequation de la chaleur :

    T

    tT = 0

    Cette equation est constituee de deux monomes. On associe a chaque monomeun operateur de discretisation :

    T

    t DFDT

    T LAPNPour chaque monome, on doit indiquer le type de schema numerique EF, VF... (discretisation spatiale) et la discretisation temporelle retenue (IMPLicite ouEXPLicite).

    Cas dune equation scalaire

    Pour chaque operateur, on doit donner le nom dune table DOMAINE et lesdonnees associees a loperateur. La table domaine precise lendroit ou sappliqueloperateur, les donnees sont precisees au cas par cas et dependent de loperateur.

    Pour DFDT, on doit indiquer : le pas de temps, le coefficient multiplicateur devant

    le monome de derivee temporelle, le nom du champ au pas de temps precedentet au pas de temps courant. En effet,

    T

    t =

    T N T NMDT

    ou designe le coefficient multiplicateur ; TN le nom de linconnue au pas detemps courant ; TNM le nom de linconnue au pas de temps precedent et DTle pas de temps.

    Dou pour une formulation elements finis implicite, la declaration de DFDT dansEQEX est realise par

    RV = EQEX $DOMAINEOPTI EF IMPL

    ZONE $D OPER DFDT 1. TNM DT INCO TN;

    Il faut ensuite initialiser les champs dont les noms se trouvent entre en creantles chpoints avec le bon support geometrique. Les chpoints doivent etre rangesdans la table RV.INCO aux indices TNM, DT et TN :

    Initiation a la simulation numerique en mecanique des fluides 19

  • 7/21/2019 coursall2_2

    20/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    RV.INCO.TNM = KCHT $D SCAL SOMMET 0. ;

    RV.INCO.TN = KCHT $D SCAL SOMMET 0. ;

    RV.INCO.DT = 100. ;

    RV.DT = RV.INCO.DT ;

    Pour le laplacien, on procede de la meme maniere :RV = EQEX RV

    OPTI EF IMPLZONE $D OPER LAPN 1. INCO TN ;

    Remarque : La table RV est creee lors de la declaration de DFDT. Elle doitetre completee avec la declaration de LAPN. Cest pourquoi largument qui suitEQEX est la table domaine au premier appel, le nom de la table a etendre auxappels suivants.

    En plus des informations spatiales, il ne faut pas oublier de preciser un certainnombre dinformations temporelles :

    RV.NITER nombre diterations internes (probleme non-lineaire).RV.OMEGA relaxation.RV.ITMA nombre de pas de temps.RV.EPS critere darret.

    Lorsque toutes les indications sont stockees dans la table creee par EQEX, il suffitdinvoquer la procedure EXEC pour que la resolution ait lieu :

    EXEC RV ; Pas de quote autour du nom dune procedure.Pour tracer le resultat, le champ de temperature etant aux sommets, il suffit decoder :

    TRAC $DOMAINE.MAILLAGE RV.INCO.TN ;

    Dans le cas dun champ vectoriel comme la vitesse ou le champ magnetique, il fautau prealable transformer lobjet CHPO en VECTEUR en utilisant loperateurVECT.

    Dans le cas ou le support geometrique est au centre de gravite des elements, ilconvient de transformer le chpoint avec loperateur KCHA avant deffectuer letrace.

    Cas dun systeme dequations

    Dans le cas des systemes dequations, nous devons introduire la notion dinconnueprimale et dinconnue duale.

    Considerons le systeme dequations lineaire

    Ut

    + V = 0.

    V

    t + U = 0.

    Initiation a la simulation numerique en mecanique des fluides 20

  • 7/21/2019 coursall2_2

    21/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    Une resolution implicite conduit au systeme matriciel

    Contribution . ContributionUt . V

    ........... . ...........

    Contribution . Contribution

    U . Vt

    U

    ......

    V

    =

    second

    membre

    eq.U

    .......

    second

    membre

    eq.V

    Comment indiquer que la contribution a la matrice du terme V dans lequationportant surUdoit etre rangee en premiere ligne deuxieme colonne ?

    La ligne est precisee par lequation traitee. Linconnue associee a une equationest appelee inconnue duale.

    La colonne est precisee par linconnue par laquelle on va multiplier le blocconsidere. Cette inconnue est appelee inconnue primale.

    Dans EQEX, on precise les inconnues primale et duale associees a un operateurapres le mot cle INCO. Dans le cas ou primale et duale sont identiques, il nestpas necessaire de donner deux fois le meme nom :

    OPER DFDT ... INCO TN TN ;est equivalent a

    OPER DFDT ... INCO TN ;Par contre, pour loperateur MDIA qui traite le monome V, il est important etobligatoire dindiquer les inconnues primale et duale :

    OPER MDIA ... INCO V U ;ou V designe le nom de linconnue primale et U le nom de linconnue duale.Sans ces precisions, nous ne pouvons ranger cette contribution en premiere ligne

    et deuxieme colonne.

    Conditions aux limites

    Deux operateurs sont plus particulierement devolus au traitement des conditionsaux limites :

    FIMP permet dimposer un flux (C.L. de type Neumann) ;CLIM permet dimposer la valeur dune inconnue (C.L. de type Dirichlet).

    En fait, CLIM nest pas un operateur mais une des directives de loperateurEQEX.

    Les arguments des ces operateurs sont les valeurs a imposer ainsi que le maillagequi indique lendroit ou on impose la condition aux limites. Au lieu du maillage,on transmet aux operateurs la table domaine associee a la zone ou on imposela condition aux limites. Lorsque on genere cette table domaine locale il fautveiller a ne pas creer de points doubles (points confondus geometriquement maisportant des numeros differents). Pour les versions anterieures a la version 2000de Castem et pour ceux qui nutilisent pas lobjet modele NAVIER STOKES,il faut utiliser loption INCL de loperateur DOMA. Cela permet de fusionner

    Initiation a la simulation numerique en mecanique des fluides 21

  • 7/21/2019 coursall2_2

    22/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    les points de la table domaine locale avec ceux de la table domaine globale. Pourceux qui utilisent lobjet modele NAVIER STOKES il faut sassurer que lesmaillages sous-tendant chaque partie sappuient sur des frontieres communes. Encas de doutes, loperateur ELIM permet de fusionner les points geometriquementconfondus.

    Afin declaircir nos propos, considerons un element et sa frontiere AB sur laquelleon souhaite imposer une valeur. Supposons que le numero du point A (resp. dupoint B) soit 1 (resp. 2).

    4

    1 2

    3

    Loperateur DOMA cree les points CENTRE et FACE associes a cet element.Lensemble des points associes a lelement est alors

    85

    7

    9

    6

    Si on applique loperateur DOMA sans loption INCL au segment AB, onobtient

    10

    Les points 7 et 10, bien que confondus geometriquement seront consideres commedifferents puisquils ont des numeros differents. Le role de loption INCL est deles fusionner afin daboutir a la situation suivante :

    7

    Initiation a la simulation numerique en mecanique des fluides 22

  • 7/21/2019 coursall2_2

    23/69

    1.6. CASTEM 2000 Cours ENSTA MF307

    Grace a loption INCL de DOMA, les points SOMMET et CENTRE duneligne sont donc respectivement inclus dans la classe de points SOMMET etFACE du maillage surfacique associe.

    Au dela de la vertu pedagogique de cet exemple, on doit remarquer que les pointsCENTRE dune ligne sont les points faces du maillage surfacique.

    En complement a cette presentation rapide de la partie mecanique des fluides deCastem, on consultera le recueil dexemples commentes qui a ete realise dans lecadre de ce cours. Les principaux themes que nous aborderons y sont illustres.Les jeux de donnees ainsi regroupes doivent permettre de repondre a la plupartdes blocages syntaxiques que les utilisateurs de la partie fluide de Castem sontsusceptibles de rencontrer.

    Initiation a la simulation numerique en mecanique des fluides 23

  • 7/21/2019 coursall2_2

    24/69

    Cours ENSTA MF307

    Chapitre 2

    Equations de Navier-Stokes,

    nature dune EDP et principales

    methodes de discretisation

    2.1 Modelisation dun fluide Newtonien

    2.1.1 Derivee particulaire

    On appelle derivee particulaire la derivee par rapport au temps dune quantiteA(x, t) attachee a une particule elementaire M(t) que lon suit dans son mouve-ment. Elle est notee

    dA

    dtet a pour expression en variables dEuler

    dA

    dt =

    A

    t + (v.)A

    Cette expression est valable que A soit un scalaire, un vecteur ou un tenseurdordre quelconque. En particulier, considerons

    I(t) =

    b(t)a(t)

    f()d

    Les regles elementaires de derivation dune fonction composee conduisent a

    dI(t)

    dt =

    b(t)a(t)

    f

    tdV + b(t).f(b(t)) a(t).f(a(t))

    Pour un domaine D(t) se deplacant a la vitessev, on obtient ainsi

    Initiation a la simulation numerique en mecanique des fluides 24

  • 7/21/2019 coursall2_2

    25/69

    2.1. MODELISATION DUN FLUIDE NEWTONIEN Cours ENSTA MF307

    dI(t)

    dt =

    D(t)

    f

    tdV +

    (t)

    fv.nd

    =

    D(t)

    {ft

    + div(fv)}dV

    = D(t){f

    t + f divv+ v.f}dV

    =D(t)

    {dfdt

    + f divv}dVOn deduit donc les expressions suivantes qui vont nous permettre dobtenir lesequations de la mecanique des fluides :

    d

    dt

    D(t)

    f dV =

    D(t)

    {dfdt

    + f divv}dV

    d

    dt D(t) f dV = D(t){ft + div(fv)}dVd

    dt

    D(t)

    f dV =

    D(t)

    f

    tdV +

    (t)

    fv.nd

    2.1.2 Equation de conservation de la masse

    Lequation de conservation de la masse ou de continuite exprime le faitque dans tout ecoulement la masse se conserve. Si on considere un volume D dumilieu continu que lon suit dans son mouvement, on a alors :

    dM(t)

    dt = 0 avecM(t) =

    D(t)

    dV

    En appliquant les resultats precedents, on obtientD(t)

    {ddt

    + divv}dV =D(t)

    {t

    + div(v)}dV = 0

    Comme ces relations sont verifiees pour tout domaineD(t), on obtient lequationaux derivees partielles (EDP) equation ponctuelle

    d

    dt + divv=

    t+ div(v) = 0

    La forme conservative

    t+ div(v) = 0

    Initiation a la simulation numerique en mecanique des fluides 25

  • 7/21/2019 coursall2_2

    26/69

    2.1. MODELISATION DUN FLUIDE NEWTONIEN Cours ENSTA MF307

    est agreable a manipuler puisque apres utilisation de la formule de Green, ilapparat le flux de matiere a linterface :

    D(t)

    tdV

    terme daccumulation+

    (t)

    v.nd

    bilan de flux= 0

    2.1.3 Equation de conservation de la quantite de mouvement

    Lequation de conservation de la quantite de mouvement sobtient en appliquantla loi fondamentale de la dynamique a une particule D du milieu continu

    F =m

    Comme=dv

    dt , on deduit en appliquant la definition de la derivee particulaire

    que

    = vt

    + (v.)v

    Les forces a considerer sont de deux natures : les forces volumiques et les forcessurfaciques. La gravite constitue lexemple le plus classique de force exterieurevolumique. Les forces surfaciques ou contraintes sont les forces de contactexercees sur la frontiere de la particule fluide consideree. On peut montrer quilexiste une relation lineaire entre la normale a la surface et la densite de forcessurfaciques Fdefinie par

    F =.n

    ou designe le tenseur des contraintes etn la normale sortante.Un fluide Newtonien est caracterise par la loi de comportement

    = pI+ ou p designe la pression contrainte lorsque le fluide est au repos et letenseur des contraintes visqueuses.

    Le tenseur des contraintes visqueuses est lie au tenseur des deformations D par

    =divvI+ 2D

    ou et sont les coefficients de Lame qui dependent de la temperature T ,

    D etant defini par

    D=1

    2(v+t v)

    Si on neglige les effets visqueux (= = 0), on obtient la loi de comportementdite de fluide parfait.

    Lequation de quantite de mouvement secrit donc

    Initiation a la simulation numerique en mecanique des fluides 26

  • 7/21/2019 coursall2_2

    27/69

    2.1. MODELISATION DUN FLUIDE NEWTONIEN Cours ENSTA MF307

    v

    t+ (v.)v =div() + g

    Remarque : div(pI) = p, ce qui permet de faire apparatre le gradient depression dans lequation de quantite de mouvement si on le souhaite.

    2.1.4 Equation de conservation de lenergie

    Le premier principe de la thermodynamique applique a tout instant t et a touteparticule D du milieu continu nous dit que la variation au cours du temps delenergie totale somme de lenergie cinetique Ec et de lenergie interne Ei

    est egale a la puissance des forces exterieures Pe augmentee de la puissancecalorifique recue Pc.

    Comme :

    Ec= D

    12

    v2dV

    Ei =

    D

    edV

    Pe =

    D

    gvdV +

    .n.vd

    Pc = D divqdVou la dependance du flux de chaleurq a la temperature est modelisee par une loide Fick :

    q= kTEn notantElenergie totale specifique definie par

    E=e +v 2

    2on obtient alors en appliquant le premier principe que

    d

    dt(E) + Edivv= g.v divq+ div(.v)

    2.1.5 Lois detat

    Pour que le systeme a resoudre soit complet, il manque encore les equationsdefinissant la pressionp et la temperature T.

    Initiation a la simulation numerique en mecanique des fluides 27

  • 7/21/2019 coursall2_2

    28/69

    2.1. MODELISATION DUN FLUIDE NEWTONIEN Cours ENSTA MF307

    La pressionp est definie par la loi detat thermique. Dans le cas des gaz parfaits,on a

    p= RT

    ouR designe la constante des gaz parfaits (rapport entre la constante des gaz[8.314 S.I.] et la masse molaire du gaz).

    La temperature T est definie par la loi detat calorifique. Dans le cas des gazparfaits, on a

    e(T) =cvT.

    2.1.6 Forme conservative des lois de conservation

    Si lequation de continuite sobtient naturellement sous forme conservative, il nenest pas de meme pour les equations de conservation de quantite de mouvementet denergie.

    Il suffit simplement de remarquer que :

    dv

    dt =

    v

    t+ (v.)v

    =v

    t v

    t+ (v.)v

    =v

    t + vdiv(v) + (v.)v

    =v

    t + div(v

    v)

    d

    dt(E) + Edivv=

    t(E) + v.(E) + E divv

    =

    t(E) + div(Ev)

    De plus, en introduisant lenthalpie specifique h et lenthalpie totale specifique Hdefinis respectivement par

    h= e + p

    etH=E+ p

    =h+ v 22

    on obtient

    div(Ev) + div(pvI) =div(vH)

    Les equations de Navier-Stokes sous forme conservative, pour un fluide Newtonienen considerant la gravite comme seule force de volume, secrivent donc :

    Initiation a la simulation numerique en mecanique des fluides 28

  • 7/21/2019 coursall2_2

    29/69

    2.2. NATURE DES EDP Cours ENSTA MF307

    t+ div(v) = 0

    v

    t + div(v v+pI) =div+ g

    E

    t + div(vH) =div(kT+ v) + g.v

    Avec dans le cas des gaz parfaits :p= RT

    e= cvTEt les definitions suivantes :

    E= e +1

    2v2

    H=E+ p

    =divvI+ (v+t v)

    3+ 2= 0

    2.2 Nature des EDP

    Le systeme dequations obtenu est incomplet dans la mesure ou lon na pas preciseles conditions initiales, les conditions aux limites ... ni le domaine de calcul.

    Quelle que soit la methode numerique choisie, il faut que le probleme soit bienpose, cest a dire que les conditions aux limites en temps et en espace soientcompatibles avec le probleme a traiter. On ne peut pas faire nimporte quoi. Lesbons choix sont dictes par la nature du probleme a traiter, a savoir : elliptique, parabolique, hyperbolique.Pour chaque type de probleme, nous allons presenter un probleme modele associeet les conditions aux limites a considerer.

    2.2.1 Probleme elliptique

    Le probleme modele est lequation de la chaleur en regime permanent:

    T = 0

    Initiation a la simulation numerique en mecanique des fluides 29

  • 7/21/2019 coursall2_2

    30/69

    2.2. NATURE DES EDP Cours ENSTA MF307

    Afin de connatre le type de conditions aux limites a imposer, il convient de definirla zone dinfluence de la temperature en un point P du domaine de calcul et lazone de dependance de ce point.

    Dans le cas dun probleme elliptique, la zone de dependance et la zone dinfluencedun point sont identiques : cest lensemble du domaine considere.

    On doit donc imposer la temperature T ou le flux de temperature Tn

    sur len-semble de la frontiere du domaine. La temperature et son gradient ne pouvantpas etre imposes simultanement en un point de la frontiere, le probleme sera bienpose si : T connue sur 1, T

    nconnu sur 2,

    ou 1 et 2 sont une partition de la frontiere 1 2 = 1

    2 =

    Si 1 = , la temperatureTest connue a une constante pres.

    Les conditions aux limites sur 1 (resp. sur 2) sont dites de Dirichlet(resp. deNeumann).

    2.2.2 Probleme parabolique

    Le probleme modele est lequation de la chaleur en regime transitoire:

    T

    tT = 0

    Initiation a la simulation numerique en mecanique des fluides 30

  • 7/21/2019 coursall2_2

    31/69

    2.2. NATURE DES EDP Cours ENSTA MF307

    connu

    T(t,x)T(t,x g) T(t,xd

    )

    t

    x

    T(0,x)

    A un instant donne, on se retrouve dans le cas precedent, on doit donc imposerT(t, x) sur 1 et

    Tn

    (t, x) sur 2 ou 1 et 2 sont une partition de la frontiere

    du domaine.

    Si 1= , la temperature est parfaitement connue par la donnee de la conditioninitiale qui fixe la constante.

    2.2.3 Probleme hyperbolique

    Le probleme modele est lequation de transport par convection dun champ sca-laire:

    c

    t

    + u.

    c= 0

    Considerons le probleme mono-dimensionnel dans le cas ou la composante duvecteuru est constante et positive :

    c

    t+ u

    c

    x= 0.

    Pourc = c(x(t), t), on obtient en appliquant les regles elementaires de derivation

    dc

    dt =

    c

    t+

    x

    t

    c

    x

    En identifiant cette derniere expression avec lequation de transport on obtientque

    dc

    dt= 0 si

    x

    t =u

    Le champ c est donc constant le long de la caracteristiquex(t) definie par

    x(t) =ut + x0.

    Initiation a la simulation numerique en mecanique des fluides 31

  • 7/21/2019 coursall2_2

    32/69

    2.2. NATURE DES EDP Cours ENSTA MF307

    Le point x0 est appele le pied de la caracteristique.

    On doit imposer c sur toute la partie de la frontiere dont sont issues les ca-racteristiques (domaine de dependance de lensemble des points du domaine). Ledomaine dinfluence dun point sera constitue par lensemble des points situessur la caracteristique en aval du point considere. Les domaines de dependance et

    dinfluence dependent donc du signe du champ de vitesse.Cas u > 0

    ,t)

    t

    x

    C(x,0)

    C(xg

    Cas u < 0

    ,t)

    C(x,0)

    C(xd

    Dans le cas ouu >0 (resp.u

  • 7/21/2019 coursall2_2

    33/69

    2.3. PRINCIPALES METHODES DE DISCRETISATION Cours ENSTA MF307

    2.2.4 Liens avec les equations de Navier-Stokes

    Pourquoi introduire ces differents problemes modeles alors que ce sont lesequations de Navier-Stokes qui in fine nous interessent ?

    Considerons un champ de vitesse constant en espace. Lequation de continuitedevient :

    t+ u

    x= 0

    qui est le probleme modele associe a une equation hyperbolique du premier ordre.

    Negligeons la vitesse dans lequation de lenergie cas dun fluide au repos et exprimons levolution de lenergie interne specifique e en fonction de latemperature T (e= cvT) :

    T

    t =

    k

    cv

    2T

    x2

    qui est le probleme associe a une equation parabolique en temps.

    Si le fluide est incompressible, lequation de continuite devient

    u

    x= 0

    La vitesse est donc constante et lequation de lenergie devient :

    T

    t + u

    T

    x =

    k

    cv

    2T

    x2

    qui est toujours un probleme parabolique en temps mais comportant deuxphenomenes physiques : convection de la temperature par le champ de vitesseet diffusion de la temperature par une loi de Fick avec un coefficient de diffusion

    D= k/(cv).

    Le nombre de Peclet, note P e et defini par P e = uL/D ou L est une longueurcaracteristique associee a la convection, mesure limportance relative de la convec-tion par rapport a la diffusion. Nous verrons que dun point de vue aussi biennumerique que physique, ce nombre adimensionnel est tres important.

    Si on neglige dans lequation de quantite de mouvement les forces de pression, onobtient :

    u

    t + u

    u

    x= 0

    et on obtient un probleme hyperbolique non-lineaire.

    2.3 Principales methodes de discretisation

    Les equations de Navier-Stokes contiennent donc bien des difficultes. Avant denaborder la resolution, il convient de bien matriser les specificites des equationsscalaires presentees ci-dessus et des methodes numeriques associees.

    Initiation a la simulation numerique en mecanique des fluides 33

  • 7/21/2019 coursall2_2

    34/69

    2.3. PRINCIPALES METHODES DE DISCRETISATION Cours ENSTA MF307

    2.3.1 Discretisation spatiale et temporelle

    Les methodes numeriques les plus utilisees en mecanique des fluides sont lesdifferences finies, les elements finis et les volumes finis. Il en existe dautres(methodes spectrales ...) dont nous ne parlerons pas dans ce cours.

    Ces methodes transforment le probleme continu en un probleme discret : lin-tervalle detude en temps [0, tmax] est decoupe en intervalles plus reduits enconsiderant 0 = t0 < ... < ti < ... < tN1 < tN =tmax. Lorsque la discretisationtemporelle est reguliere on a

    i, ti = ti+1 ti= t= constante..

    De meme, en espace, un ensemble de points est introduit :

    j+1

    ii-1 i+1

    j

    j-1

    Une fonction inconnue f(x, t) sera representee par lensemble de ses valeurs auxdifferents points et aux differents instants de la discretisation (f(xi,j , tn)). Lobjetdes methodes numeriques est de determiner ces valeurs.

    2.3.2 Differences finies

    La methode des differences finies consiste a remplacer les derivees partielles auxpoints du maillage par des developpements de Taylor :

    f(xi+1) =f(xi+ h) =f(xi) + hf(xi)

    x + ... +

    hn

    n!

    (n)f(xi)

    xn + O(hn+1)

    f(xi1) =f(xih) =f(xi)hf(xi)x

    +...+(1)nhn

    n!

    (n)f(xi)

    xn +O(hn+1)

    Initiation a la simulation numerique en mecanique des fluides 34

  • 7/21/2019 coursall2_2

    35/69

    2.3. PRINCIPALES METHODES DE DISCRETISATION Cours ENSTA MF307

    les termes de troncatureO(hn+1) ayant la signification suivante :

    a= b+ O(hn+1) Kindependant de h / | a b | Khn+1

    Par combinaisons lineaires des developpements de Taylor, on exprime les deriveespartielles en fonction des valeurs aux points de discretisation. Ainsi, en negligeant

    les erreurs de troncature,2fx2

    i

    = fi+1 2fi+ fi1

    h2

    f

    x

    i

    =

    1

    h(fi+1 fi)

    1

    h(fi fi1)

    1

    2h

    (fi+1

    fi1)

    On peut noter qua priori, on a le choix entre trois formes dapproximation de laderivee premiere.

    Lorsque chaque monome de lEDP a resoudre est remplace par une des approxi-mations obtenues, en figeant les donnees materielles, on obtient des combinaisonslineaires entre les valeurs des inconnues aux points de discretisation, soit sousforme matricielle

    Af=b

    2.3.3 Elements finis

    La methode des elements finis consiste a minimiser lerreur commise en rem-placant le probleme continu par le probleme discret.

    Soient Vh un espace vectoriel de dimension finie dont les vecteurs de base serontnotesNi, i variant de 1 a N,Vun espace vectoriel de dimension infinie et fh Vhla fonction approchant f V :

    fh(x) =Ni=1

    fiNi(x)

    En general, on choisitVhde telle sorte queVh

    V(approximation dite conforme).

    SoitE(f) = 0 lequation differentielle verifiee par f. En remplacant f parfh, oncommet une erreur dou E(fh) =h.

    On va chercher a annuler lerreur sur un espace de fonction de dimension finie methode de residus ponderes ; par exemple, en choisissant comme espace deprojection lespaceVh (methode dite de Galerkin), on a

    i, < h, Ni>= 0 i, < E(fh), Ni>= 0

    Initiation a la simulation numerique en mecanique des fluides 35

  • 7/21/2019 coursall2_2

    36/69

    2.3. PRINCIPALES METHODES DE DISCRETISATION Cours ENSTA MF307

    En explicitant E et fh, on obtient la formulation variationnelle du probleme dis-cret. Elle conduit aussi a un systeme matriciel de la forme

    Af=b

    Rappel:

    < E(fh), Ni>=

    E(fh)Ni

    2.3.4 Volumes finis

    La methode des volumes finis est bien adaptee a des problemes conservatifs :

    f

    t + div( F(f)) = 0

    En discretisant le domaine simule, on ecrit la loi de conservation sur chaqueelement puis on integre en considerant comme degre de liberte ou inconnue associe a lelement la valeur moyenne sur lelement :

    K

    {ft

    + div F(f)}dV = 0

    K

    fn+1 fnt

    dV +

    K

    F(f).nd= 0

    | K|t

    (fn+1K fnK) + KF(f).nd= 0

    Il reste a exprimer le flux numerique a partir des valeurs de linconnue sur chaqueelement. Le schema sera explicite (resp. implicite) si le flux est exprime a partirdes donnees au tempsn(resp. n + 1).

    Dans le cas ou le flux correspond au flux convectif F(f) =ufon pourrait envi-sager les expressions suivantes du flux :

    F(f).n=

    u.nfK

    u.nfK

    u.n

    fK+ fK

    2

    Initiation a la simulation numerique en mecanique des fluides 36

  • 7/21/2019 coursall2_2

    37/69

    2.3. PRINCIPALES METHODES DE DISCRETISATION Cours ENSTA MF307

    U

    K

    K

    Une fois que le flux a travers chaque face du maillage est exprime en fonctiondes valeurs moyennes de linconnue en chaque element, on obtient un systemematriciel de la forme

    Af=b

    La question qui reste pour linstant sans reponse est la suivante :A-ton fh f lorsque h et t 0 (convergence de la solution numerique versla solution du probleme continu) ?

    Cela constituera la question centrale du prochain chapitre.

    Initiation a la simulation numerique en mecanique des fluides 37

  • 7/21/2019 coursall2_2

    38/69

    Cours ENSTA MF307

    Chapitre 3

    Convergence et conditions aux

    limites

    3.1 Convergence, stabilite et consistance

    3.1.1 Definitions

    La convergence, lorsque le pas du maillage en espace notehou x et lorsquele pas de temps t tendent simultanement vers 0, de la solution approchee fhvers la solution exacte f dune EDP est delicate a demontrer.

    Cest pourquoi on utilise le plus souvent le theoreme de Lax : pour un problemelineaire bien pose, il y a equivalence entre convergence et (stabilite + consistance).

    Laconsistanceest une notion qui doit permettre de dire si lorsque het ttendent

    vers 0 le systeme dequations algebriques est egal a lEDP.La stabiliteest une traduction du principe du maximum. Pour les problemes dediffusion-convection, en absence de terme source, la solution est bornee par leminimum et le maximum de la condition initiale. Le schema numerique, pourverifier ce principe, ne doit donc pas amplifier les erreurs.

    Nous allons illustrer les notions de consistance et de stabilite a laide de lequationde transport par diffusion-convection dun champ scalaire passif et de sesformes degenerees comme lequation de la chaleur et lequation de transport parconvection en appliquant une methode de discretisation spatiale par differencesfinies.

    3.1.2 Consistance du schema differences finies pour lequation de lachaleur

    Le schema aux differences finies applique a lequation de la chaleur 1D

    T

    t

    2T

    x2 = 0

    Initiation a la simulation numerique en mecanique des fluides 38

  • 7/21/2019 coursall2_2

    39/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    secrit dans le cas ou une discretisation temporelle explicite est choisie

    Tn+1j =sTnj1+ (1 2s)Tnj + sTnj+1

    avec s = t

    x2.

    Pour montrer que ce schema est consistant, on va montrer que la differenceentre T

    n+1

    j , solution exacte du probleme, et Tn+1j , solution numerique obtenue

    en considerant comme condition a linstantn la solution exacte Tn

    j , est au moinsenO(t, x).

    Dans un premier temps, on effectue des developpements limites en espace autourdu point j au temps n pour les differents termes intervenant dans le schemaaux differences finies. On applique alors le schema numerique ; par combinaisonslineaires des developpements limites on obtient une expression permettant decomparer la solution numerique a la solution exacte et a ses gradients :

    (

    s)T

    n

    j+1 =Tn

    j + x T

    x n

    j

    +x2

    2 2T

    x2

    n

    j

    + ...

    ((1 2s))Tnj =Tn

    j

    (s)Tnj1 =Tn

    j x

    T

    x

    nj

    +x2

    2

    2T

    x2

    nj

    + ...

    Tn+1

    j =T

    n

    j + sx2 2Tx2

    n

    j +

    sx4

    12 4Tx4 n

    j + O(sx6

    )Dans un deuxieme temps, on effectue un developpement limite en temps de lasolution exacte au point j au temps n + 1 :

    Tn+1

    j =Tn

    j + t

    T

    t

    nj

    +t2

    2

    2T

    t2

    nj

    + O(t3)

    En differenciant les deux expressions obtenues ci-dessus et en remarquant que Tetant solution de lequation de la chaleur on a

    2T

    t2 =2

    4T

    x4

    on obtient

    Initiation a la simulation numerique en mecanique des fluides 39

  • 7/21/2019 coursall2_2

    40/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    Tn+1

    j Tn+1j

    = t

    T

    t

    nj

    sx2

    t

    2T

    x2

    nj

    + 2

    t2

    2

    4T

    x4

    nj

    1 sx

    4

    6t22

    = tT

    t

    nj

    2Tx2

    nj

    +

    tx2

    2 (s 1

    6)4T

    x4nj

    CommeT est solution de lequation, on obtient en prenant egalement en compteles termes de troncature passes sous silence ci-dessus

    Tn+1

    j Tn+1j =tx2

    2 (s 1

    6)

    4T

    x4

    nj

    + tO(t2, x4)

    3.1.3 Stabilite du schema differences finies pour lequation de trans-port

    Plusieurs methodes permettent de montrer la stabilite dun schema numerique : Mettre le schema sous la forme fn+1 =Afn et montrer que les valeurs propres

    de A sont de normes inferieures a 1 (car fn+1 =An+1f0 par recurrence) ; Utiliser les transformees de Fourier et montrer que la norme du facteur dam-

    plification reste inferieure a 1 (analyse spectrale, due a Von Neumann) ; Une methode un peu moins numerique enfin ou on considere une condition

    initiale particuliere dont on etudie levolution afin de verifier si a lissue dun pasde temps le principe du maximum discret est realise ; on verifie ainsi la facondont deventuelles perturbations sont susceptibles de samplifier methodedes perturbations ; le defaut de cette methode est de ne pas etre generale,les conditions de stabilite obtenues pouvant dependre de la condition initialechoisie.

    Dans ce paragraphe, nous allons etudier la stabilite de plusieurs schemasnumeriques bases sur une discretisation spatiale par differences finies. Ces schemasseront appliques a lequation de transport par diffusion-convection dun champscalaire passif :

    c

    t+ div(ucDc) = 0

    ou le vecteur vitesse u et le tenseur de diffusion D sont supposes connus et

    independants du champ transporte.Dans le cas mono-dimensionnel, en supposant le fluide incompressible, lequationde transport degenere en

    ct+ ucx dcxx= 0

    Pourquoi des instabilites numeriques apparaissent-elles ? Existe-t-il des instabi-lites numeriques liees a la discretisation spatiale ? a la discretisation temporelle ?

    Initiation a la simulation numerique en mecanique des fluides 40

  • 7/21/2019 coursall2_2

    41/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    Nous allons tenter de repondre a ces questions dans les paragraphes suivants enutilisant pour les analyses de stabilite la methode des perturbations.

    Instabilites numeriques et discretisation spatiale

    Afin de comprendre le lien entre instabilites numeriques et discretisation spa-tiale eliminons le temps de lequation de transport en considerant le problemepermanent :

    ucx dcxx= 0

    Pour un maillage uniforme de pas x, en utilisant un schema centre pour le termeconvectif on obtient :

    (1 P)ci+1 2ci+ (1 + P)ci1 = 0ou P =

    ux

    2d designe le Peclet de maille.

    En remarquant que (1 P) + (1 +P) = 2, on peut associer ci avec les termesci+1 etci1 :

    (1 P)(ci+1 ci) = (1 + P)(ci ci1)

    Cette expression montre que des que P 1, les pentes a droite et a gauche dupoint i sont de signes contraires. On a donc un extremum local au point i. Ceraisonnement pouvant sappliquer a lensemble des points de la discretisation spa-tiale, tous les points sont des extrema locaux : la solution est donc necessairementoscillante.

    i

    i+1i-1

    Pour quil ny ait pas doscillation, la contrainte de stabilite P 1 conduit a lacontrainte suivante sur le pas despace

    x

    2d

    u

    Instabilites numeriques et discretisation temporelle

    Probleme de transport diffusif: Negligeons dans un premier temps le termeconvectif. Lequation a considerer secrit donc

    ct dcxx = 0

    Initiation a la simulation numerique en mecanique des fluides 41

  • 7/21/2019 coursall2_2

    42/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    Un schema explicite centre conduit a :cn+1i cni =F(cni+1 2cni + cni1)ou F =

    dt

    x2 designe le nombre de Fourier.

    Le schema sera stable si deventuelles perturbations ne sont pas amplifiees aucours du temps. Supposons donc quec

    0 sauf au point i ouci = . En injectant

    cette solution particuliere de cn dans le schema numerique, on obtient pour lepointxi :

    cn+1i =(1 2F)

    Le schema sera donc stable si

    | cn+1i

    cni| 1

    Ce qui conduit a la contrainte de stabilite

    F 1

    Si de plus on souhaite imposer la positivitede c i on doit verifier

    cn+1icni

    0 F 12

    La contrainte obtenue sur le pas de temps est donc

    t

    x2

    2d

    Probleme de transport par diffusion-convection : Associons a lequationde transport par diffusion-convection le schema explicite en temps et centre enespace

    cn+1i cni = C2 (cni+1 cni1) + F(cni+1 2cni + cni1)ou C=

    ut

    x designe le nombre de Courant-Friedrichs-Lewy (CFL).

    Supposons u > 0. Si u < 0, il suffit de permuter dans ce qui suit le role despoints xi+1 et xi1. Considerons a nouveau la condition initiale particuliere ex-hibee precedemment, a savoirc 0 sauf en x i ou ci = .En exprimant le schema au point x i+1, on obtient :

    cn+1i+1 =(C2

    + F)

    La stabilite conduit a la double inegalite suivante :

    1 C2

    + F 1

    Initiation a la simulation numerique en mecanique des fluides 42

  • 7/21/2019 coursall2_2

    43/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    Comme nous avons suppose que le champ de vitesse u est positif, linegalite degauche est verifiee ; celle de droite conduit a la contrainte suivante sur le pas detemps :

    t 22d

    x2 + ux

    En exprimant le schema au point x i1, on obtient :

    1 C2

    + F 1

    La contrainte precedente suffit, mais pour garantir la positivite on obtient lacontrainte plus restrictive

    C2F

    1, soit P 1.

    On retrouve a nouveau la contrainte obtenue dans le cas permanent.

    En exprimant le schema au point x i, on obtient :

    F 12

    Compte tenu des definitions de P, F etC :

    2PF =C

    Comme on doit verifier simultanementF 0.5 etP 1 , on obtient finalementla contrainte suivante sur le nombre CFL :

    C 1

    La contrainte sur le pas de temps devient alors

    t 2du2

    Probleme de transport convectif: Negligeons maintenant dans lequation detransport le terme diffusif. Lequation a considerer secrit donc

    ct+ ucx= 0

    Une discretisation centree du terme convectif en explicite conduit a

    cn+1i cni = C2

    (cni+1 cni1)ou C=

    ut

    x designe le nombre de Courant-Friedrichs-Lewy (CFL).

    Initiation a la simulation numerique en mecanique des fluides 43

  • 7/21/2019 coursall2_2

    44/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    On voit les limites de la methode employee puisque dans le cas du schema centreon sapercoit que les conditions de stabilite obtenues dependent du choix de lasolution particuliere injectee dans le schema. Il faut donc recourir a une methodeplus generale.

    Letude de la stabilite via la methode de Von Neumann que nous detaillons plus

    loin dans ce chapitre, conduit a comparer la norme du facteur damortissementG avec 1. Le schema sera stable pour G 1

    Le schema centre explicite dans le cas dune equation de transport sans termediffusif est donc inconditionnellement instable.

    Remarque : Si on integre en temps sur un intervalle suffisamment court, letemps necessaire pour que lamplitude des oscillations soit significative devant lesvariations de la solution peut ne pas etre atteint.

    Afin de saffranchir des instabilites numeriques dorigine spatiale, on ajoute de ladiffusion numerique au schema. Pour cela, on decentrela discretisation du termeconvectif selon le sens de la vitesse. Le decentrement amont ou upwind estrealise a laide des parties positive et negative de la vitesse definies par

    u+ =u+ | u |

    2 etu =

    u | u |2

    Il suffit alors dassocier a chaque partie de la vitesse lapproximation de la deriveepremiere faisant intervenir le point amont :

    [ucx]i = 1

    x

    u+(ci ci1) + u(ci+1 ci)

    En remplacant les parties positive et negative de la vitesse par leurs definitions,on obtient

    [ucx]i = u

    2x(ci+1 ci1) x | u |

    2

    ci+1 2ci+ ci1x2

    Le decentrement du terme convectif revient donc a ajouter au schema centrede la diffusion numerique, le coefficient de viscosite etant egal a x|u|/2. Lacontrainte de stabilite obtenue dans le cas dune equation de transport dun champ

    scalaire passif par diffusion et convection, x 2d/u, est alors automatiquementverifiee.

    Dautre part, t 2d/u2 lest aussi des que C 1. Le schema explicite decentreamont sera donc stable sous la condition CFL.

    Nous venons de voir quen agissant sur la discretisation spatiale du terme convec-tif, on obtenait un schema conditionnellement stable. Une autre facon de stabiliserle schema centre est dagir sur la discretisation temporelle.

    Initiation a la simulation numerique en mecanique des fluides 44

  • 7/21/2019 coursall2_2

    45/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    3.1.4 Discretisation temporelle et approximants de Pade

    La stabilisation des oscillations dorigine temporellepeut etre realisee en construi-sant un schema explicite dordre 2 en temps. On utilise pour cela les approximantsde Pade.

    Approximants de Pade

    Soit B la matrice associee a un operateur differentiel. On definit lexponentielledune matrice par :

    eB =i=0

    Bi

    i!

    Les approximants de Pade consistent a cherchereZ sous la forme dune fractionrationnelle P(Z)Q(Z) ouP etQ sont deux polynomes de degre p et q approchante

    Z

    a lordre r. Cela signifie quen effectuant la division de P par Q on obtient ledeveloppement limite de eZ jusqua lordre r.

    Le lien entre les approximants de Pade et la discretisation temporelle dune EDPest assez simple a condition de separer les discretisations spatiale et temporelle.Supposons que lEDP a resoudre secrive

    c

    t+ Bc = 0.

    La solution de cette equation est bien entendu

    c= c0eBt.

    En utilisant les approximants de Pade, on obtient un schema en temps consistantdordre r en considerant c sous la forme

    Q(tB)c implicite

    = P(tB)c0 explicite

    .

    Approximants de Pade pour (p,q) allant jusqua (2,2)

    (approximation de eZ)

    p= 1 p= 2

    1 Z 1 Z+ Z2

    2(ordre 1) (order 2)

    q= 1 11+Z1Z

    2

    1+Z2

    1 2Z3

    +Z2

    6

    1+Z3

    (ordre 1) (ordre 2) (order 3)

    q= 2 11+Z+Z

    2

    2

    1Z3

    1+ 2Z3

    +Z2

    2

    1Z2

    +Z2

    12

    1+Z2

    +Z2

    12

    (ordre 2) (ordre 3) (order 4)

    Initiation a la simulation numerique en mecanique des fluides 45

  • 7/21/2019 coursall2_2

    46/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    Remarques : Les schemas au dessus de la diagonale sont a dominante explicite. Ceux en

    dessous a dominante implicite, la diagonale etant a traiter au cas par cas ; On retrouve la plupart des schemas via les approximants de Pade : Euler ex-

    plicite (p=1 et q=0), Euler implicite (p=0 et q=1), Crank-Nicolson (p=q=1),Lax-Wendroff (p=2 et q=0), ... ;

    Notons quen evaluant Z2, on peut obtenir un schema en temps dordre 4 ! ; Si les valeurs principales de B sont reelles et positives, on peut montrer que le

    schema obtenu via les approximants de Pade est inconditionnellement stablepourp q.

    Stabilisation temporelle

    En quoi lutilisation dune discretisation temporelle particuliere permet-elledeviter le developpement dinstabilites numeriques ?

    Afin de repondre a cette question, interessons nous au schema explicite dordre

    2 en temps de Lax-Wendroff. Ce schema correspond a Q(Z) = 1 e t P(Z) =1 Z+ Z2/2.Dans le cas dune equation de transport par convection pure, on aBc= div(uc),dou B2c= div(udiv(uc)). Si on suppose le fluide incompressible, div(u) = 0, etle terme supplementaire a ajouter au schema centre est Dc, le coefficient deviscosite etant donne parD= (t/2)u u.On obtient donc dans le cas mono-dimensionnel d = u2t/2. On peut remarquerque dans le cas ou le nombre CFL C est egal a un, les viscosites numeriquesliees au decentrement dune part, au schema de Lax-Wendroff dautre part, sontegales.

    Compte tenu de lexpression de d, la contrainte de stabilite t 2d/u2 estverifiee et F 1/2 des que C 1. De plus, PC = 1 et donc P 1. Lasolution pourra donc presenter des oscillations en espace. Cependant, a cause dela stabilite en temps, ces oscillations resteront bornees.

    3.1.5 Etude de la stabilite par la methode de Von Neumann

    Si les schemas explicites souffrent de problemes de stabilite, il nen est pas dememe des schemas implicites. Nous allons nous servir de la methode de VonNeumann pour montrer ces resultats. En particulier, nous montrerons que le

    schema centre explicite dordre un en temps est inconditionnellement instable.

    Pour une fonction integrable f, on definit sa transformee de Fourier, noteef, parf(k) = 1

    2

    eikxf(x)dx

    ouk designe le nombre donde.

    Initiation a la simulation numerique en mecanique des fluides 46

  • 7/21/2019 coursall2_2

    47/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    Nous avons vu que la discretisation dun probleme devolution lineaire conduisaita fn+1 = Afn. Par recurrence, on obtient fn+1 = An+1f0. En considerant latransformee de Fourier de f, on retrouve egalement ces egalites :fn+1 =Afn

    fn+1 =

    An+1

    f0

    La transformee de Fourier etant une isometrie, les normes

    A

    etA sontegales (egalite de Parseval). De plus, lorsque les operateurs de discretisation spa-

    tiale agissent sur la transformee de Fourier, les derivees deviennent des produits.En effet, on a

    fx

    = ikfnfxn

    = (ik)nf.En appliquant les proprietes de derivation au developpement de Taylor au pointi on obtient

    fi+1=

    fi(1 ikx + (ikx)22! + ...) =

    fie

    ikx

    fi1=fi(1 + ikx + (ikx)22! + ...) =fieikxOn obtient ainsi facilement le coefficient damortissementAdont il suffit devaluerle module A est un nombre complexe afin destimer la stabilite du schemaetudie. Il est plus facile de comparer a 1 le facteur damortissement que de com-parer a 1 les valeurs propres de la matrice A.

    Appliquons une -methode a lequation de convection pure discretisee par unschema centre. On obtient alors

    cn+1i cni = C2

    (cn+1i+1 cn+1i1) + (1 )(cni+1 cni1)

    Le schema ainsi obtenu conduit pour la transformee de Fourier de ca

    cn+1i =1 + iC(1 )sin(kx)1 iC sin(kx) cniLa norme du facteur damortissement est donc donnee par

    A 2=[1 2C(1 ) sin2(kx)]2 + 2Csin2(kx)(1 + 2C

    2 sin2(kx))2

    Apres quelques calculs, la condition de stabiliteA 2 1 conduit a2Csin

    2(kx)(1 + 2C2 sin2(kx))(1 2) 0

    Le schema propose est donc inconditionnellement stable si 0.5, instable sinon.Les schemas de Crank-Nicholson (= 0.5) et dEuler implicite (= 1.0) sont doncinconditionnellement stables. Euler explicite ( = 0.0) est inconditionnellementinstable si on utilise un schema centre pour la convection.

    Appliquons une -methode a lequation de diffusion :

    cn+1i cni =F[(cn+1i+1 2cn+1i + cn+1i1) + (1 )(cni+1 2cni + cni1)]

    Initiation a la simulation numerique en mecanique des fluides 47

  • 7/21/2019 coursall2_2

    48/69

    3.1. CONVERGENCE, STABILITE ET CONSISTANCE Cours ENSTA MF307

    Les proprietes de la transformee de Fourier conduisent a

    ci+1 2ci+ci1= 2(1 cos(kx)) = 4sin2(kx2

    )

    Dou lexpression suivante du facteur damortissement

    A= 1 + 4F( 1) sin2(kx2 )1 + 4F sin

    2(kx2 )

    Comme [0, 1] et que F > 0, il est clair queA 1. Par contre linegalite1 Anest verifiee que sous la condition

    2 4Fsin2(kx2

    )(2 1)Pour 0.5, le schema est donc inconditionnellement stable. Pour < 0.5, leschema est stable sous la condition F 0.5.

    Exercice : Retrouver les resultats obtenus avec la methode des perturbations

    dans le cas de lequation de diffusion-convection.

    3.1.6 Consistance et stabilite en volumes finis

    En volumes finis, la notion de stabilite est la meme quen differences finies.Par contre la notion de consistance (compatibilite en francais) est differente :la definition de la consistance presentee au debut de ce cours est associee auxdifferences finies (developpements de Taylor).

    En volumes finis, on cherche a evaluer les flux aux interfaces a laide des valeursdu champ de part et dautre de linterface. Le flux sera dit consistant si le flux

    numerique Fh tend vers le flux physique Florsque le maillage saffine.La notion de decentrement existe aussi en volumes finis. Le flux a linterface estdecentre en faisant intervenir les elements situes en amont du champ de vitesse.

    K

    K KK

    k

    U U

    F = U Ch

    F = U Ch K

    Initiation a la simulation numerique en mecanique des fluides 48

  • 7/21/2019 coursall2_2

    49/69

    3.2. IMPOSITION DES CONDITIONS AUX LIMITES DE TYPE DIRICHLET Cours ENSTA MF307

    3.2 Imposition des conditions aux limites de type Diri-

    chlet

    Nous avons vu dans le chapitre precedent que suivant le type de probleme atraiter, on devait imposer la valeur du champ ou de son flux a la frontiere du do-

    maine. Nous allons presenter dans ce paragraphe les trois methodes classiquementutilisees afin dimposer la valeur dune inconnue en un point.

    Soit x linconnue du systeme matriciel Ax= b. Comment imposer au point i lavaleurxi = Xi ?

    i

    n

    n

    A

    A

    i

    i

    (A x = b )

    x

    3.2.1 Methode de substitution

    La premiere methode, dite de substitution, consiste a remplacer la matrice derang n par une matrice de rang (n

    1) en supprimant la ligne i et la colonne i

    correspondant a linconnue xi ; a modifier le second membre en y retranchant leproduit de la colonne i par Xi.

    i

    n-1

    n-1

    AiXi

    avec

    Cette methode est delicate a mettre en oeuvre dun point de vue informatiquecar on doit modifier la matrice et le second membre obtenu avant limpositiondes conditions aux limites. En general, la matrice est stockee sous une forme

    Initiation a la simulation numerique en mecanique des fluides 49

  • 7/21/2019 coursall2_2

    50/69

    3.2. IMPOSITION DES CONDITIONS AUX LIMITES DE TYPE DIRICHLET Cours ENSTA MF307

    condensee (morse, ...) afin de gagner de lespace memoire et il nest pas toujourstrivial dy supprimer une ligne et une colonne.

    3.2.2 Methode de penalisation

    La deuxieme methode, dite de penalisation, est tres simple a mettre en oeuvre.Elle consiste a ajouter sur la diagonale en position i un gros coefficient et ausecond membre Xi.

    i X

    Lequation associee a la ligne i ainsi modifiee secrit

    nj=1

    aijxj+ xi = bi+ Xi

    Ce qui conduit a

    xi = Xi+1

    (bi

    nj=1

    aijxj)

    Pour suffisamment grand, le second terme du second membre est negligeable.Dans certains cas cependant, le choix du coefficient est delicat. Les puristesreprocheront egalement a cette methode de ne pas etre exacte.

    3.2.3 Utilisation dun multiplicateur de Lagrange

    La derniere methode utilise les multiplicateurs de Lagrange. On introduit donci le multiplicateur de Lagrange associe a la contrainte x i Xi= 0.Prendre en compte cette contrainte revient a transformer le probleme initial enun probleme doptimisation sous contrainte, dou lajout a la matrice A de lacontribution

    Initiation a la simulation numerique en mecanique des fluides 50

  • 7/21/2019 coursall2_2

    51/69

    3.2. IMPOSITION DES CONDITIONS AUX LIMITES DE TYPE DIRICHLET Cours ENSTA MF307

    0 1

    1 0

    xii

    =

    0

    Xi

    On passe ainsi dune matrice de rang n a une matrice de rang n+ 1 puisque on

    doit a jouter la ligne et la colonne associees au multiplicateur de Lagrange.

    n+1

    n+1

    0

    0 1

    1

    xi

    Xi

    Linteret de la methode est quelle sintegre assez bien dans le cadre dunediscretisation par elements finis : la matrice elementaire associee au multiplicateurde Lagrange est assemblee aux autres matrices elementaires de facon generique.La difficulte est le plus souvent de pouvoir interpreter la signification du multi-plicateur de Lagrange.

    Initiation a la simulation numerique en mecanique des fluides 51

  • 7/21/2019 coursall2_2

    52/69

    Cours ENSTA MF307

    Chapitre 4

    Methode des elements finis

    4.1 Introduction

    On appelle element fini lassociation :dun element geometrique ;de fonctions dinterpolation ;de points (ou noeuds) support geometriques des inconnues.

    Ce triplet nest pas le resultat du hasard mais de contraintes liees aux proprietesmathematiques verifiees par la solution cherchee et dune demarche visant a op-timiser le nombre de terme nul de la matrice du systeme final.

    4.1.1 Elements geometriques

    Lensemble des elements ou maillage doit constituer un recouvrement dudomaine de calcul. En 2D, les elements utilises sont des triangles et des qua-drangles. En 3D, des tetraedres, des prismes, des cubes et parfois des pyramides.Si dautres polygones sont possibles leurs utilisations restent confidentielles.

    Initiation a la simulation numerique en mecanique des fluides 52

  • 7/21/2019 coursall2_2

    53/69

    4.1. INTRODUCTION Cours ENSTA MF307

    Les differents elements du maillage sont soumis a quelques contraintes puisquilsdoivent constituer un recouvrement du domaine. Ainsi, deux elements adjacentsdu maillage ont en commun un sommet ou une face.

    InterditAutoris

    4.1.2 Fonctions dinterpolation et espaces associes

    Sur chaque element du maillage, linconnue du probleme continu, notee c par lasuite, est approchee par une fonction simple, notee ch.

    Si on suppose la fonction approchee connue en un certain nombre de points delelement, elle est evaluee en nimporte quel point de lelement par interpolation.Les fonctions dinterpolation choisies sont en general des polynomes. Les elementsfinis sont alors dits de Lagrange. Dautres choix sont possibles mais ne seront pasevoques ici.

    La restriction de la fonction approchee a un element K du maillage, notee cKh,est de la forme

    cKh(x, y) =Nki=1

    ciNi(x, y)

    ou ci designe la valeur de la fonction approchee ch au point xi de coordonnees(xi, yi) ; Ni la fonction dinterpolationassociee a xi ; Nk le nombre de fonctionsutilisees pour lelementK.

    Les coefficientsci de cette combinaison lineaire sont les inconnues ou degre deliberte du probleme discret. Les fonctions dinterpolation sont les fonctions debase dun espace vectoriel de dimension finie Nh dans lequel on cherche a priorila solution discrete ch.

    Pour les problemes de type diffusion-convection, la fonction continue appartienta lun des espaces vectoriels de dimension infinie suivants :

    L2() =

    f : R/(

    f2)1

    2 <

    H1() =

    f L2()/f

    xj L2()j

    Hdiv() =

    f L2()n/div f L2()

    Initiation a la simulation numerique en mecanique des fluides 53

  • 7/21/2019 coursall2_2

    54/69

    4.2. ESPACES DISCRETS DE PLUS BAS DEGRE Cours ENSTA MF307

    Signalons, a titre culturel, quil peut apparatre egalement lespaceHrot defini par

    Hrot() =

    f L2()n/rot f L2()n

    Dans le cas des elements finis dits conformes, lespace vectoriel de dimensionfinie dans lequel on recherche la fonction approchee est inclus dans lespace de

    dimension infinie auquel appartient la fonction continue.

    La caracterisation des espaces de dimension finie permet de preciser les fonctionsdinterpolation et la localisation des points