E.S.C.P.I. G.M.2 - Second Cycle ´Equations aux dérivées partielles
Transcription
E.S.C.P.I. G.M.2 - Second Cycle ´Equations aux dérivées partielles
E.S.C.P.I. G.M.2 - Second Cycle Équations aux dérivées partielles Mathématiques et méthodes numériques Nelly POINT et Jacques-Hervé SAIAC 13 mai 2008 2 Table des matières 1 Rappels d’analyse vectorielle 1.1 Fonction scalaire ou champ scalaire . . . . . . . . . . . . 1.1.1 Dérivation des fonctions composées . . . . . . . . 1.1.2 Dérivées partielles d’ordre supérieur . . . . . . . . 1.2 Fonction vectorielle ou champ vectoriel . . . . . . . . . . 1.3 Opérateurs différentiels . . . . . . . . . . . . . . . . . . . 1.4 Formule stokiennes . . . . . . . . . . . . . . . . . . . . . 1.4.1 Formule de la divergence : Ostrogradsky . . . . . 1.4.2 Formule du rotationnel : Stokes . . . . . . . . . . 1.5 Définitions intrinsèques de la divergence et du rotationnel 1.6 Champs de gradients . . . . . . . . . . . . . . . . . . . . 1.7 Quelques formules d’analyse vectorielle . . . . . . . . . . 1.8 Opérateurs en coordonnées cylindriques et sphériques . . . . . . . . . . . . . . 7 7 8 8 9 10 11 11 11 11 12 12 12 . . . . . . . . . . . . 15 15 17 18 18 19 19 19 19 19 20 20 21 3 L’équation de Laplace 3.1 Equation de Laplace dans IRn . . . . . . . . . . . . . . . . . . . . 3.2 Equation de Laplace dans un demi-plan . . . . . . . . . . . . . . . 23 23 23 2 Généralités sur les équations aux dérivées 2.1 Concepts de base et définitions . . . . . . 2.2 L’équation de transport . . . . . . . . . . 2.3 L’équation de la chaleur ou de la diffusion 2.3.1 Modèle physique . . . . . . . . . . 2.3.2 Problème stationnaire . . . . . . . 2.4 L’équation des ondes . . . . . . . . . . . . 2.4.1 Modèle physique . . . . . . . . . . 2.4.2 Problème stationnaire . . . . . . . 2.5 L’équation de Poisson . . . . . . . . . . . 2.5.1 Conduction thermique . . . . . . . 2.5.2 Membrane élastique . . . . . . . . . 2.5.3 Mécanique des fluides parfaits . . . 3 partielles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.3 3.4 3.5 3.6 3.2.1 Résolution par la transformée de Fourier . . . . . . Equation de Laplace dans un cercle ou une sphère . . . . . Equation de Laplace dans un rectangle . . . . . . . . . . . 3.4.1 Méthode de séparation des variables. . . . . . . . . Equation de Laplace dans un domaine borné Ω quelconque Propriétés fondamentales des fonctions harmoniques . . . . 3.6.1 Principe du maximum . . . . . . . . . . . . . . . . 3.6.2 Unicité de la solution . . . . . . . . . . . . . . . . . 3.6.3 Propriété de la moyenne . . . . . . . . . . . . . . . 4 L’équation de la chaleur ou équation de la diffusion 4.1 Equation de la chaleur dans IRn . . . . . . . . . . . . . . . 4.2 Equation de la chaleur dans IR . . . . . . . . . . . . . . . . 4.2.1 Transformée de Fourier . . . . . . . . . . . . . . . . 4.2.2 Commentaires . . . . . . . . . . . . . . . . . . . . . 4.3 Equation de la chaleur sur un segment . . . . . . . . . . . 4.3.1 Méthode de séparation des variables . . . . . . . . 4.3.2 Remarques importantes . . . . . . . . . . . . . 4.4 Unicité de la solution . . . . . . . . . . . . . . . . . . . . . 4.4.1 Equation de la chaleur dans un segment . . . . . . 4.4.2 Equation de la chaleur dans un domaine quelconque 5 L’équation des ondes 5.1 L’équation des ondes dans IRn . . . . . . . . 5.2 Equation des ondes dans IR . . . . . . . . . 5.2.1 Changement de variables . . . . . . . 5.2.2 Commentaires . . . . . . . . . . . . . 5.3 L’équation des ondes dans un segment . . . 5.3.1 Méthode de séparation des variables 5.3.2 Remarques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 24 25 25 29 30 30 30 31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 33 33 34 35 36 36 37 37 37 39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 41 41 42 43 44 44 45 . . . . . . . . . 47 47 47 48 48 48 48 49 49 50 6 Classification des E.D.P. quasi-linéaires du deuxième ordre 6.1 E.D.P. quasi-linéaires du deuxième ordre définies dans R2 . . . 6.1.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.2 Classification des e.d.p. quasi-linéaires du second ordre 6.2 Réduction à la forme standard . . . . . . . . . . . . . . . . . . 6.2.1 Equations hyperboliques . . . . . . . . . . . . . . . . . 6.2.2 Equations paraboliques . . . . . . . . . . . . . . . . . . 6.2.3 Equations elliptiques . . . . . . . . . . . . . . . . . . . 6.2.4 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3 E.D.P. quasi-linéaires du deuxième ordre définies dans R3 . . . . . . . . . . . . 5 6.4 Problème de Cauchy . . . . . . . . . . . . . . . . . . . . . . . . . 50 7 Principes généraux des méthodes numériques 7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2 Taille des problèmes et stockage mémoire . . . . . . . . . . . . . 7.3 Mémoires d’ordinateur . . . . . . . . . . . . . . . . . . . . . . . . 7.4 Vitesse de calcul . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5 Stratégies de calcul . . . . . . . . . . . . . . . . . . . . . . . . . . 7.6 Représentation des nombres dans un ordinateur . . . . . . . . . . 7.7 Représentation des différents types numériques . . . . . . . . . . . 7.7.1 Les entiers . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.7.2 Les réels ou nombres flottants . . . . . . . . . . . . . . . . 7.7.3 La représentation standard . . . . . . . . . . . . . . . . . . 7.8 Grandes familles de méthodes d’approximation des équations de la physique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.8.1 Différences finies . . . . . . . . . . . . . . . . . . . . . . . 7.8.2 Éléments finis . . . . . . . . . . . . . . . . . . . . . . . . . 7.8.3 Volumes finis . . . . . . . . . . . . . . . . . . . . . . . . . 53 53 53 54 54 54 55 56 56 56 57 8 Introduction aux différences finies 8.1 Un exemple de problème en dimension 1 . . . . . . 8.2 Différences finies en dimension un . . . . . . . . . . 8.2.1 Quelques formules simples d’approximation par des différences divisées. . . . . . . . . . 8.3 Problème discret . . . . . . . . . . . . . . . . . . . 8.4 Problème mixte Dirichlet-Neumann . . . . . . . . . 8.5 Remarques finales . . . . . . . . . . . . . . . . . . . 8.6 Exercice : Calcul d’une poutre en flexion . . . . . . 63 63 63 . . . . . . . . . . . . . . . . des dérivées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Modélisation de quelques problèmes bidimensionnels classiques de la physique 9.1 Quelques exemples de problèmes physiques . . . . . . . . . . . . . 9.1.1 Membrane élastique . . . . . . . . . . . . . . . . . . . . . . 9.1.2 Conduction thermique . . . . . . . . . . . . . . . . . . . . 9.1.3 Mécanique des fluides parfaits . . . . . . . . . . . . . . . . 9.2 Approximation par différences finies . . . . . . . . . . . . . . . . . 9.2.1 Discrétisation géométrique . . . . . . . . . . . . . . . . . . 9.2.2 Quelques formules simples d’approximation des dérivées partielles par différences finies . . . . . . . . . . . . . . . . 61 61 62 62 64 66 67 68 68 71 71 71 72 72 73 74 74 6 10 Introduction aux problèmes d’évolution. L’équation de la chaleur instationnaire. 10.1 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . 10.2 Etude des schémas de différences finies dans le cas monodimensionnel 10.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.2 Le Schéma d’Euler explicite . . . . . . . . . . . . . . . . . 10.2.3 Ordre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.4 Stabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.5 Etude matricielle de la stabilité . . . . . . . . . . . . . . . 10.2.6 Autres exemples de schémas à un pas . . . . . . . . . . . . 10.2.7 Étude de la stabilité par l’analyse de Fourier . . . . . . . . 77 77 78 78 79 80 81 82 84 86 11 Introduction aux problèmes conservatifs. L’équation de transport 11.1 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Étude des schémas de différences finies dans le cas monodimensionnel 11.2.1 Un premier schéma explicite centré instable . . . . . . . . 11.2.2 Schémas implicites centrés stables . . . . . . . . . . . . . 11.2.3 Schémas explicites stables . . . . . . . . . . . . . . . . . . 91 91 91 92 92 93 12 Introduction aux problèmes hyperboliques. L’équation des ondes 95 12.1 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . 95 12.2 Étude des schémas de différences finies dans le cas monodimensionnel 96 12.2.1 Première approche : discrétisation directe de l’équation du second ordre . . . . . . . . . . . . . . . . . . . . . . . . . . 96 12.2.2 Le schéma différences finies explicite (en temps ) et centré ( en espace) . . . . . . . . . . . . . . . . . . . . . . . . . . 97 12.2.3 Etude de la stabilité par l’analyse de Fourier. . . . . . . . 97 12.2.4 Application au schéma aux différences finies explicite . . . 99 12.2.5 Un schéma aux différences finies implicite décentré (en temps) et centré (en espace) . . . . . . . . . . . . . . . . . 101 12.3 Seconde approche : Système du premier ordre équivalent . . . . . 101 12.3.1 Un premier schéma explicite centré instable . . . . . . . . 102 12.3.2 Schémas implicites centrés stables . . . . . . . . . . . . . 103 12.3.3 Schémas explicites stables . . . . . . . . . . . . . . . . . . 103 12.3.4 Interprétation de la condition de Courant-Friedrichs-Lewy 105 Chapitre 1 Rappels d’analyse vectorielle 1.1 Fonction scalaire ou champ scalaire Définition 1.1.1 (champ scalaire) Un champ scalaire est une fonction de IRn dans IR, où n = 2 ou 3. Définition 1.1.2 (gradient) Soit f un champ scalaire défini dans IR3 . On appelle gradient de f et on note grad(f ) ou ∇f (on prononce nabla de f ), le vecteur : ∂f ∂x ∂f grad(f ) = ∇f = (1.1) ∂y ∂f ∂z ∂f où notée parfois également fx représente la dérivée partielle de f par rapport ∂x à x. Exemples de champ scalaire : – l’altitude – la température – la pression Définition 1.1.3 (Dérivée directionnelle) Soit V un vecteur unitaire de IR3 . On appelle dérivée directionnelle de f au point M0 = (x0 , y0 , z0 ) dans la direction de V le produit scalaire ∇f (M0 )·V (1.2) 8 Mathématiques et méthodes numériques On utilise souvent la notion de dérivée normale sur le bord d’un domaine Ω de IR3 . Notons n le vecteur normal unitaire orienté vers l’extérieur du domaine Ω en chaque point de son bord ∂Ω. On obtient : ∂f = ∇f ·n ∂n (1.3) Exemples de calculs de dérivées normales 1) Calculer les expressions des dérivées normales au bord du domaine formé par le carré unité dans IR2 2) Même question pour le triangle rectangle isocèle OAB avec O : (0, 0) A : (1, 0) B : (0, 1). 1.1.1 Dérivation des fonctions composées On rappelle les formules de dérivation des fonctions composées à plusieurs variables. Par exemple dans le cas g(s, t) = f (x(s, t), y(s, t), z(s, t)) on a ∂g ∂f ∂x ∂f ∂y ∂f ∂z = + + ∂s ∂x ∂s ∂y ∂s ∂z ∂s ∂g ∂f ∂x ∂f ∂y ∂f ∂z = + + ∂t ∂x ∂t ∂y ∂t ∂z ∂t (1.4) Ce que l’on peut également noter : ½ g s = f x xs + f y y s + f z z s gt = fx xt + fy yt + fz zt 1.1.2 (1.5) Dérivées partielles d’ordre supérieur Les dérivées d’ordre deux sont les dérivées premières de fonctions qui sont elles-mêmes dérivées partielles premières d’une fonction. Et ainsi de suite pour les dérivées d’ordre supérieur. Par exemple ∂ ∂f ∂ 2f = ( ) 2 ∂x ∂x ∂x De même on a ∂ ∂f ∂ ∂f ∂ 2f = ( )= ( ) ∂x∂y ∂x ∂y ∂y ∂x dès que f est assez régulière, c’est à dire deux fois continuement dérivable. Rappels d’analyse vectorielle 9 Formule de Taylor L’étude locale d’une fonction se fait à l’aide de la formule de Taylor, qui s’écrit de la façon suivante pour une fonction de trois variables : f (x + h, y + k, z + l) = f (x, y, z) + [h, k, l] 1 + 2 [h, k, l] ∂2f ∂2f ∂2f ∂x2 ∂x∂y ∂x∂z ∂2f ∂2f ∂2f ∂y∂x ∂y 2 ∂y∂z ∂2f ∂2f ∂z∂x ∂z∂y ∂2f ∂z 2 ∂f ∂x ∂f ∂y ∂f ∂z h k + (h2 + k 2 + l2 )²(h, k, l) l La matrice 3 × 3 des dérivées partielles secondes est symétrique si f est deux fois continuement dérivable (ce que l’on supposera) et s’appelle le Hessien de f ou matrice hessienne de f . 1.2 Fonction vectorielle ou champ vectoriel Définition 1.2.1 (Champs vectoriel) Un champ vectoriel est une fonction de IRn dans IRp , p > 1. Nous nous placerons généralement dans les cas n et p égaux à 2 ou 3. Exemples de champs vectoriels : – la force de gravitation – le champ électrique – la vitesse d’un fluide Définition 1.2.2 (Matrice Jacobienne) Soit f un champ vectoriel défini de IR3 dans IR3 . On appelle matrice Jacobienne de f et on note Jac(f ) la matrice formée par les dérivées partielles de la fonction f . Définition 1.2.3 (Jacobien) On appelle déterminant Jacobien le déterminant de cette matrice Jacobienne de f . 10 1.3 Mathématiques et méthodes numériques Opérateurs différentiels Définition 1.3.1 (Divergence) Soit V une fonction vectorielle de 3 variables (x, y, z) définie sur un domaine Ω de IR3 et à valeurs X, Y, Z. On appelle divergence du vecteur V et on note div(V) ou ∇.V, le scalaire : div(V) = ∇ · V = On écrit formellement ∂X ∂Y ∂Z + + ∂x ∂y ∂z (1.6) X £∂ ¤ ∂ ∂ , , Y ∂x ∂y ∂z = (∇ · V) Z divV < 0 divV > 0 (1.7) divV = 0 Exemple physique : l’eau est un fluide incompressible, ce qui se représente, si V est le champ de vecteurs vitesses du fluide, par divV = 0 Définition 1.3.2 (Rotationnel) On appelle rotationnel d’un champ vectoriel V , le vecteur ∂Z ∂Y − ∂z ∂y ∂X ∂Z rot V = (1.8) ∂z − ∂x ∂Y − ∂X ∂x ∂y On écrit formellement ∂ ∂x ∂ ∂y ∂ ∂z X ∧ Y = (∇ ∧ V) Z (1.9) Remarque 1.3.1 Les définitions données ci-dessus de la divergence et du rotationnel ont deux défauts majeurs. 1) Elles n’ont pas de sens physique clair, alors que ce sont des notions très souvent utilisées en physique. 2) Elles semblent dépendre du sytème de coordonnées choisi. Rappels d’analyse vectorielle 1.4 11 Formule stokiennes Pour pouvoir donner une définition intrinsèque et un sens physique aux opérateurs divergence et rotationnel, nous allons rappeler deux formules intégrales 1.4.1 Formule de la divergence : Ostrogradsky Soit Ω ⊂ IR3 de frontière ∂Ω régulière, et un champ vectoriel V défini sur Ω tout entier. Soit n le vecteur unitaire normal à ∂Ω orienté vers l’extérieur de Ω. On a l’égalité suivante ZZ ZZZ V · n dS = div(V) dΩ ∂Ω (1.10) Ω où dS représente l’élément d’aire sur ∂Ω et dΩ l’élément de volume dans Ω. Les expressions des éléments d’aire et de volume dépendent des systèmes de coordonnées choisis. Cette formule montre que le flux d’un vecteur V sortant d’un domaine Ω est égal à l’intégrale sur ce domaine de sa divergence. 1.4.2 Formule du rotationnel : Stokes Soit C une courbe fermée orientée de IR3 et S une surface quelconque de bord C. Soit t le vecteur unitaire tangent à C orienté dans le sens direct. On a Z ZZ V · t dl = rotV · n dS (1.11) C S où dl représente l’élément de longueur sur C et dS représente l’élément d’aire sur S. Cette formule explicite la circulation d’un champ de vecteur le long d’une courbe fermée C. 1.5 Définitions intrinsèques de la divergence et du rotationnel On voit à l’aide de la formule de la divergence que la valeur de la divergence de V en un point M0 : (x0 , y0 , z0 ) est la limite, quand le volume contenant le point M0 diminue et tend vers le point M0 , du flux sortant de ce volume rapporté à la mesure du volume. RR V · n dS ∂Ω (1.12) divV (M0 ) = lim Ω→M0 mesure(Ω) 12 Mathématiques et méthodes numériques De même, pour le rotationnel, on a R S→M0 1.6 V dM mesure(S) ∂C rotV (M0 ) = lim (1.13) Champs de gradients Si V est un champ de gradients c’est à dire si V = grad f (on dit qu’il dérive d’un potentiel f ), la divergence de V est : divV = div(grad f ) = ∂2f ∂ 2f ∂ 2f + + ∂x2 ∂y 2 ∂z 2 (1.14) Cet opérateur s’appelle le Laplacien et se note ∆f . 1.7 Quelques formules d’analyse vectorielle On a : div(rotV) = 0 (1.15) Un champ de rotationnel est à divergence nulle. En particulier pour un fluide, un champ de rotationnel représente la vitesse d’un fluide incompressible. rot(gradf ) = 0 (1.16) Un champ de gradient (qui dérive d’un potentiel) est irrotationnel. 1.8 grad(f g) = f grad(g) + g grad(f ) (1.17) div(aV) = a div(V) + V grad(f ) (1.18) rot(aV) = a rot(V) + grad(a) ∧ V (1.19) Opérateurs en coordonnées cylindriques et sphériques En coordonnées cylindriques l’opérateur Laplacien prend la forme suivante : ∆U = 1 ∂U 1 ∂ 2U ∂2U ∂2U + + + ∂r2 r ∂r r2 ∂θ2 ∂z 2 avec U (r, θ, z) = u(r cos θ, r sin θ, z). (1.20) Rappels d’analyse vectorielle 13 En coordonnées sphériques l’opérateur Laplacien prend la forme suivante : ∆U = ∂ 2U 2 ∂U 1 ∂ 2U cos θ ∂U 1 ∂ 2U + + + + ∂r2 r ∂r r2 ∂θ2 r2 sin θ ∂θ r2 sin2 θ ∂ϕ2 (1.21) avec U (r, ϕ, θ) = u(r sin θ cos ϕ, r sin θ sin ϕ, r cos θ). On peut montrer que dans le cas particulier où la fonction U ne dépend que de la distance à l’origine, le Laplacien dans Rn a la forme suivante : ∆U (r) = d2 U (n − 1) dU + 2 dr r dr (1.22) 14 Mathématiques et méthodes numériques Chapitre 2 Généralités sur les équations aux dérivées partielles 2.1 Concepts de base et définitions Définition 2.1.1 Une équation aux dérivées partielles ou edp, est une relation faisant intervenir une fonction inconnue u de IRn dans IR , les variables x , y, ... , ses dérivées partielles, ux , uy , ... , uxx , uxy , uyy , .... . Elle s’écrit de façon générale : f (x, y, ..., u, ux , uy , ..., uxx , uxy , ...) = 0 (2.1) L’équation (2.1) est considérée dans un domaine Ω de IRn Les solutions de l’équation aux dérivées partielles ( 2.1) sont les fonctions qui vérifient cette équation dans Ω. Exemples : u2 uxy + ux = y (2.2) uxx + 2y 2 uxy + 3xuyy = 1 (2.3) (ux )2 + (uy )2 = 1 (2.4) uxx − uyy = 0 (2.5) Les fonctions u(x, y) = (x + y)3 et u(x, y) = sin(x − y) sont toutes deux des solutions de (2.5). Définition 2.1.2 L’ordre d’une équation aux dérivées partielles est l’ordre de la dérivée partielle d’ordre le plus élevé intervenant dans l’équation. 15 16 Mathématiques et méthodes numériques – Les équations (2.2), (2.3), (2.5), sont d’ordre 2. – L’équation (2.4) est d’ordre 1. Définition 2.1.3 Une équation aux dérivées partielles linéaire est linéaire par rapport à la fonction u et à toutes ses dérivées partielles. – Les équations (2.3), (2.5), sont linéaires. – Les équations (2.2), (2.4), sont nonlinéaires. Définition 2.1.4 Une équation aux dérivées partielles quasilinéaire est linéaire par rapport aux dérivées partielles d’ordre le plus élevé de la fonction u. – L’équation (2.2) est quasilinéaire. Définition 2.1.5 Une équation aux dérivées partielles linéaire homogène est vérifiée pour u = 0 (si elle est écrite de façon usuelle, le second membre, ne contenant ni u ni ses dérivées partielles, est identiquement nul). – L’équation (2.5) est linéaire et homogène. On étudiera essentiellement les équations aux dérivées partielles linéaires du second ordre car ce sont les équations les plus fréquemment rencontrées dans les problèmes de la physique mathématique. On sait bien que la solution générale d’une équation différentielle linéaire d’ordre n dépend de n constantes arbitraires. Dans le cas des équations aux dérivées partielles linéaires d’ordre n on a la propriété suivante : Théorème 2.1.1 La solution générale d’une équation différentielle linéaire d’ordre n dépend linéairement de n fonctions arbitraires. Considérons par exemple, l’équation linéaire homogène uxy = 0 (2.6) En intégrant par rapport à y, on obtient : u(x, y) = f (x) (2.7) En intégrant ensuite par rapport à x et en notant g est une primitive de la fonction arbitraire f , on obtient : u(x, y) = g(x) + h(y) (2.8) Généralités sur les e.d.p. 17 Les fonctions g et h sont deux fonctions quelconques. En pratique, parmi toutes les solutions possibles, on en cherche une qui vérifie des conditions supplémentaires. Dans les problèmes issus de la physique, ces conditions sont, en général, imposées sur le bord du domaine Ω et s’appellent conditions aux bords. On utilise aussi le terme de conditions aux limites. Définition 2.1.6 En mathématiques, un problème est dit bien posé s’il a une solution et si cette solution est unique. La question de l’unicité n’est pas une question superflue. En effet, prenons par exemple le problème de Poisson : ( −∆u(x, y) = f (x, y) ∀ (x, y) ∈ Ω ∂u =g ∀ (x, y) ∈ ∂Ω ∂n qui peut, par exemple, représenter le problème de la recherche de la température dans un domaine Ω connaissant le flux de chaleur au bord ∂Ω du domaine. Il est facile de vérifier que, s’il y a une solution, il y en a une infinité, à une constante additive près. Ce problème est mal posé. De la même manière, en calcul des structures, il est nécessaire de fixer un certain nombre de liaisons, pour obtenir une solution unique à l’équilibre. Sinon, on peut également obtenir une solution à des constantes additives près, ce que les mécaniciens expriment par “solution à un déplacement rigide près”. Il faut donc rajouter des conditions pour avoir une seule solution. Les conditions adéquates dépendent du problème étudié. En pratique, on distingue la variable temps des variables d’espace du fait du caractère non réversible en temps de certains phénomènes physiques. On distingue alors les conditions au bord du domaine spatial et les conditions initiales. 2.2 L’équation de transport Considérons la fonction u(x, t) = f (x−ct) où x est la variable d’espace, x ∈ IR, t le temps, t ∈ IR+ et c la vitesse de transport. Il est facile de voir que la fonction u vérifie l’équation aux dérivées partielles linéaire du premier ordre : c ∂u ∂u + =0 ∂x ∂t (2.9) 18 Mathématiques et méthodes numériques quelle que soit la fonction f . La fonction f (x − ct) est une onde progressive. La fonction u est constante le long des droites x − ct = cste qui sont appelées droites caractéristiques. Il suffit de donner la valeur de f sur chaque droite caractéristique pour définir u en tous points. En général, on se donne la condition initiale ce qui suffit à définir f en tout point et donc u en tout point x ∈ IR et tout temps t ∈ IR+ . 2.3 2.3.1 L’équation de la chaleur ou de la diffusion Modèle physique La température u(x, y, t) d’un corps plan de surface Ω, de densité ρ, de chaleur spécifique c et de conductivité thermique k est régie au cours du temps par l’équation : ρc ∂u − div(k grad u) = f ∂t ∀ (x, y) ∈ Ω et ∀t ∈ [0, T ] (2.10) où f représente la puissance volumique fournie au corps Ω. Si la conductivité k est constante, l’équation se réduit à : ρc ∂u − k ∆u = f ∂t ∀ (x, y) ∈ Ω et ∀t ∈ [0, T ] (2.11) Ce problème, du premier ordre en temps, est le modèle des problèmes paraboliques. La détermination de la solution nécessite de fixer une condition initiale en temps : la valeur de la température u au temps 0. u(x, y, 0) = u0 (x, y) (2.12) On dit que le problème est un problème à valeur initiale ou problème de Cauchy. D’autre part, sur la frontière ∂Ω du domaine, différentes conditions aux limites peuvent être prises en compte pour déterminer complètement la solution. – Conditions de type Dirichlet lorsque la température est fixée sur une partie de la frontière – Conditions de type Neumann si le flux thermique est fixé sur une autre partie de la frontière (il nul dans le cas d’un matériau isolé thermiquement) – Conditions de type Fourier dans le cas le plus général où le flux thermique est proportionnel à la différence de température entre l’extérieur et l’intérieur. Généralités sur les e.d.p. 2.3.2 19 Problème stationnaire Lorsque la température ne dépend plus du temps (régime permanent ou stationnaire), on obtient l’équation suivante : ½ −div(k gradu) = f ∀ (x, y) ∈ Ω (2.13) + conditions aux bords sur ∂Ω 2.4 2.4.1 L’équation des ondes Modèle physique Considérons une membrane élastique de surface Ω, plane au repos et fixée sur son bord Γ. Lors de petites vibrations transversales, le déplacement normal au plan d’équilibre en tout point x, y de Ω et à chaque instant t est une fonction u : x, y, t −→ u(x, y, t) qui vérifie l’équation : ∂ 2u = c2 ∆u + f ∂t2 ∀(x, y) ∈ Ω ∀t ∈ [0, T ] (2.14) où c désigne la vitesse des ondes. Ce problème du second ordre en temps est un modèle de problème hyperbolique. La détermination de la solution nécessite de fixer deux conditions initiales en temps : la valeur du déplacement transversal u et de sa dérivée partielle en temps, au temps 0. : ( u(x, y, 0) = u0 (x, y) (2.15) ∂u (x, y, 0) = u1 (x, y) ∂t On obtient ainsi un problème à valeurs initiales ou problème de Cauchy. Il faut encore ajouter des conditions aux limites sur la frontière ∂Ω . 2.4.2 Problème stationnaire Lorsque la solution ne dépend plus du temps (régime permanent ou stationnaire) on retrouve une équation de la forme : ½ −∆u = f ∀ (x, y) ∈ Ω (2.16) + conditions aux bords sur ∂Ω 2.5 L’équation de Poisson Différents phénomènes physiques appartienent à la famille des problèmes stationnaires et se traduisent par une équation de Poisson. 20 2.5.1 Mathématiques et méthodes numériques Conduction thermique On considère une plaque plane Ω de frontière Γ dont une partie Γd est à température connue Td et une partie Γn est isolée thermiquement. Γd ' $ Ω & % Γn Fig. 2.1 – Conduction thermique dans une plaque La température T à l’équilibre vérifie l’équation ∀ (x, y) ∈ Ω −∆T (x, y) = f (x, y) T (x, y) = Td (x, y) ∀ (x, y) ∈ Γd ∂T (x, y, 0) = 0 ∀ (x, y) ∈ Γn ∂n 2.5.2 (2.17) Membrane élastique f(x,y) G u(x,y) Fig. 2.2 – Membrane élastique On considère une membrane élastique plane Ω fixée sur son pourtour Γ. On suppose la membrane soumise en tout point (x, y) à une densité de forces f s’exerçant perpendiculairement au plan de la membrane. Sous l’action de f chaque point de la membrane subit un petit déplacement. Le déplacement transversal, perpendiculaire au plan de Ω est l’inconnue u de ce problème et vérifie l’équation : Généralités sur les e.d.p. ( 21 −∆ u (x, y) = f (x, y) ∀ x, y ∈ Ω u |Γ (x, y) = 0 2.5.3 (2.18) Mécanique des fluides parfaits Soit Ω le domaine interne d’une tuyère, on considère l’écoulement d’un fluide parfait, incompressible non-visqueux, à l’intérieur de cette tuyère. L’écoulement étant incompressible, il est à divergence nulle et donc le vecteur vitesse u du fluide peut s’écrire comme le rotationnel d’une fonction ψ dite fonction de courant. On a: ∂ψ ∂ψ u = rot ψ = ( ,− ) (2.19) ∂y ∂x Les lignes iso-ψ sont les lignes de courant du fluide. La fonction de courant ψ Γ1 Γe Γs Ω Γ0 Fig. 2.3 – Tuyère vérifie également une équation de Poisson, qui s’écrit dans le cas d’un écoulement irrotationnel (cas d’un profil de vitesse constant en entrée ) : −∆ψ(x, y) = 0 ∀ (x, y) ∈ Ω ψ|Γ0 (x, y) = 0 ψ|Γ1 (x, y) = 1 (2.20) ψ|Γe (x, y) = 0 ∂ψ |Γ (x, y) = 0 ∂n s En général, les problèmes stationnaires comme les problèmes précédents, appartiennent à la famille des problèmes elliptiques qui s’écrivent : −∆u(x, y) = f (x, y) ∀ (x, y) ∈ Ω u|Γd (x, y) = ud (2.21) ∂u (x, y) = g ∂n |Γd 22 Mathématiques et méthodes numériques Chapitre 3 L’équation de Laplace Introduction aux problèmes elliptiques. 3.1 Equation de Laplace dans IRn Définition 3.1.1 Soit u(x, y, ...) une fonction définie sur un domaine D de IRn , et vérifiant dans ce domaine l’équation de Laplace : ∆u = 0 (3.1) Les fonctions qui vérifient cette équation sont dites harmoniques dans D. L’étude mathématique de l’équation bidimensionelle (c. à d. dans IR2 ) va permettre de dégager, dans un cas simple, les principales propriétés des problèmes regroupés sous le vocable de problèmes elliptiques (cf. ch. 6). 3.2 Equation de Laplace dans un demi-plan Considérons le problème physique suivant : on veut connaı̂tre la température dans un demi plan connaissant la température sur le bord, sachant que cette température tend vers 0 en s’éloignant de ce bord et qu’il n’y a aucun apport de chaleur. Le modèle mathématique correspondant s’écrit : trouver u : (x, y) → u(x, y) telle que : ∂ 2u ∂ 2u (x, y) + (x, y) = 0 ∀x ∈ IR et ∀y ∈ IR+ ∂x2 ∂y 2 u(x, 0) = f (x) donnée u(x, +∞) = 0 23 (3.2) (3.3) (3.4) (3.5) 24 3.2.1 Mathématiques et méthodes numériques Résolution par la transformée de Fourier On introduit la transformée de Fourier de u par rapport à x , notée U (ν, y) et définie par : Z +∞ U (ν, y) = u(x, y) exp(−2iπνx)dx (3.6) −∞ La transformée de Fourier de l’équation s’écrit : (−2iπν)2 U (ν, y) + ∂2 U (ν, y) = 0 ∂y 2 (3.7) La résolution de l’équation différentielle du second ordre en y donne : U (ν, y) = A(ν) exp(2πνy) + B(ν) exp(−2πνy) (3.8) Comme la fonction u(x, y) tend vers 0 lorsque y tend vers +∞ quelque soit x d’après (3.5), la transformée de Fourier U (ν, y) doit aussi tendre vers 0. Comme exp(2πνy) tend vers +∞ lorsque y tend vers +∞ quand v > 0, il faut donc que A(ν) = 0 pour ν > 0. De même il faut que B(ν) = 0 pour ν < 0. La condition pour y = 0 , implique U (ν, 0) = F (ν) où F (ν) est la transformée de Fourier de la donnée f (x). On a donc A(ν) = F (ν) pour ν < 0 et B(ν) = F (ν) pour ν > 0. On obtient donc : U (ν, y) = F (ν) exp(−2π|ν|y) (3.9) Or, d’après les formules de transformées de Fourier, exp(−2π|ν|y) = F ( π(x2 y ) + y2) (3.10) La transformée de Fourier d’un produit de convolution est le produit des transformées de Fourier.Comme U est le produit de F (ν) par exp(−2π|ν|y), la transformée de Fourier inverse de U est le produit de convolution, par rapport à la variable x , de la fonction f avec la fonction π(x2y+y2 ) . La solution u s’écrit donc : Z +∞ u(x, y) = f (s) −∞ 3.3 y ds π((x − s)2 + y 2 ) (3.11) Equation de Laplace dans un cercle ou une sphère Si l’on veut résoudre l’équation de Laplace dans un cercle centré à l’origine de rayon a, il est naturel de passer en coordoonnées polaires. L’équation de Laplace 25 Si l’on ne cherche que les solutions indépendantes de l’angle polaire, c’est à p dire les fonctions v(r) = v( x2 + y 2 ) = u(x, y) , on doit alors résoudre l’équation différentielle suivante : ∂ 2 v 1 ∂v + = 0 pour r ∈]0, a] ∂r2 r ∂r Ce qui entraine (3.12) ∂v C1 = et donc ∂r r v(r) = C1 ln r + C2 (3.13) On vérifie que cette solution n’est pas définie en r = 0. De la même façon, on montre que les fonctions harmoniques qui ne dépendent que de la distance au centre dans une sphère de centre O et de rayon a, doivent vérifier l’équation différentielle suivante : ∂ 2 v 2 ∂v + = 0 pour r ∈]0, a] ∂r2 r ∂r (3.14) 1 v(r) = C1 + C2 r (3.15) et sont de la forme : 3.4 Equation de Laplace dans un rectangle On considère le problème physique suivant : un rectangle sans apport de chaleur à l’intérieur, sans échange de chaleur sur deux des côtés opposés (côtés adiabatiques) et avec une température imposée sur les deux autres côtés. On cherche la température dans le rectangle. Les équations du problème sont alors : trouver u : (x, y) → u(x, y) telle que : ∂ u ∂ 2u (x, y) + (x, y) = 0 ∀x ∈]0, a[ et ∀y ∈]0, b[ ∂x2 ∂y 2 ∂u ∂u (0, y) = 0 et (a, y) = 0 ∀y ∈]0, b[ ∂n ∂n u(x, 0) = ϕ(x) et u(x, b) = ψ(x) ∀x ∈]0, a[ (3.16) 2 (3.17) (3.18) (3.19) où ϕ et ψ sont des données. 3.4.1 Méthode de séparation des variables. Pour résoudre dans un rectangle ce problème on utilise la méthode de séparation des variables appelée aussi méthode de Fourier. 26 Mathématiques et méthodes numériques – On néglige temporairement la condition non-homogène (3.19) qui dans cet exemple est une condition de type Dirichlet. – On cherche les solutions du problème homogène (3.17) et (3.18) , qui sont du type u(x, y) = X(x)Y (y) et non identiquement nulles. L’équation (3.17) conduit à : X”(x)Y (y) + Y ”(y)X(x) = 0 (3.20) Comme une fonction ne dépendant que de x ne peut être égale à une fonction de y que si ces deux fonctions sont constantes, on a : X”(x) Y ”(y) =− =λ X(x) Y (y) (3.21) Quant à (3.18) cela implique : X 0 (0)Y (y) = 0 et X 0 (a)Y (y) = 0 (3.22) Puisque l’on cherche les solutions X(x)Y (y) non identiquement nulles, il faut que Y (y) 6= 0 et donc : X 0 (0) = 0 et X 0 (a) = 0 (3.23) – On commence donc par résoudre le problème en X. On cherche donc pour quelles valeurs de la constante λ le problème suivant a des solutions X(x) non identiquement nulles : X”(x) = λX(x) ∀x ∈]0, a[ X 0 (0) = 0 X 0 (a) = 0 (3.24) (3.25) (3.26) Ce problème consiste en fait à chercher les valeurs propres et les vecteurs propres de l’opérateur ”dérivée seconde” dans le sous espace vectoriel de L2 (0, a) formé par les fonctions deux fois continûment dérivables sur ]0, a[ et de dérivées nulles en x = 0 et x = a . – En multipliant (3.24) par X(x) et en intégrant par parties sur ]0, a[ , on obtient : Z a Z a 0 2 0 a (X (x)) dx = λ (X(x))2 dx (3.27) [X (x)X(x)]0 − 0 0 Les conditions de Neumann homogènes impliquent que le premier terme est nul et comme les intégrales sont positives ou nulles, les valeurs propres ne peuvent être que négatives ou nulles. L’équation de Laplace 27 – Pour λ = 0, on a X(x) = A + Bx, avec B = 0 à cause de les conditions de Neumann homogènes. Le problème a donc pour valeur propre λ0 = 0 et les fonctions propres associées sont les fonctions contantes X0 (x) = A0 . – Pour λ < 0, on pose pour simplifier l’écriture λ = −ω 2 , on a alors X(x) = A cos(ωx) + B sin(ωx) , d’où X 0 (x) = ω(−A sin(ωx) + B cos(ωx)) et d’après les conditions de Neumann homogènes et puisque ω 6= 0 , on a: B=0 −A sin(ωa) + B cos(ωa) = 0 (3.28) (3.29) Si on veut avoir X(x) non identiquement nulle il faut que A 6= 0 et donc que sin(ωa) = 0, ce qui n’est possible que si ωa = nπ où n est un entier relatif. Les valeurs propres sont donc de la forme : π 2π 3π λ1 = −( )2 , λ2 = −( )2 , λ3 = −( )2 , a a a 4π 2 nπ 2 λ4 = −( ) , ..., ..., λn = −( ) , (3.30) a a Les fonctions propres associées à chaque λn sont les fonctions : nπ Xn (x) = cos( x) (3.31) a – Pour chacunes des valeurs propres λn trouvées, on résout le problème en Yn correspondant : nπ Yn ”(y) = ( )2 Yn (y) ∀y ∈]0, b[ (3.32) a D’où, pour λ0 = 0 : Y0 (y) = C0 y + D0 (3.33) et pour λn = −( nπ )2 : a nπy nπy ) + Dn exp(− ) (3.34) a a – La fonction Un (x, y) = Xn (x)Yn (y) est donc solution du problème linéaire homogène (3.17) et (3.18). D’après le principe de superposition, la somme de toutes les fonctions Un est aussi solution de ce problème. Cette solution s’écrit : Yn (y) = Cn exp( U (x, y) = C0 y + D0 ∞ X nπy nπy ´ nπ ³ ) + Dn exp(− ) + cos( x) Cn exp( a a a n=1 (3.35) 28 Mathématiques et méthodes numériques – Il faut donc maintenant s’assurer que la condition (3.19) (que l’on avait négligée jusqu’alors) peut être vérifiée par la fonction U si on choisit de façon convenable les coefficients Cn et Dn . Il faut donc que : ∞ X nπ x) (Cn + Dn ) = ϕ(x) a n=1 µ ¶ ∞ X nπ nπb nπb C0 b + D0 + cos( x) Cn exp( ) + Dn exp(− ) = ψ(x) a a a n=1 D0 + cos( Or la propriété fondamentale est que les fonctions propres Xn (x) trouvées forment une base des fonctions de L2 (0, a). On peut donc décomposer de façon unique ϕ et ψ sur cette base : ϕ(x) = a0 + ψ(x) = α0 + ∞ X n=1 ∞ X an cos( nπ x) a (3.36) nπ x) a (3.37) αn cos( n=1 En utilisant l’unicité de la décomposition, on obtient : D0 = a0 C0 b + D0 = α0 Cn + Dn = an nπb nπb Cn exp( ) + Dn exp(− ) = αn a a (3.38) (3.39) (3.40) (3.41) Ce qui permet de déterminer de façon unique les constantes Cn et Dn . – Exemple : Cas ϕ(x) = 0 et ψ(x) = cos2 ( πa x) . Dans ce cas an = 0 pour tout n ≥ 0 et α0 = 1/2 , α2 = 1/2 et αn = 0 pour tout n , n 6= 0 et n 6= 2 . On a alors : D0 = 0 1 C0 = 2b Cn + Dn = 0 ∀n > 0 1 C2 = 4sh( 2πb ) a Cn = 0 ∀n, n 6= 0 et n 6= 2 (3.42) (3.43) (3.44) (3.45) (3.46) L’équation de Laplace 29 La solution explicite du problème est alors : ) 2π sh( 2πy 1 a u(x, y) = y + cos( x) 2πb 2b a 2sh( a ) (3.47) Remarque : Pour pouvoir utiliser la méthode de séparation des variables, il est essentiel qu’il y aı̂t des conditions homogènes sur deux cotés opposés afin de pouvoir chercher les valeurs propres et les fonctions propres d’un problème linéaire et homogène. Si ce n’est pas le cas, il est toujours possible d’après la linéarité du problème de superposer des problèmes ayant cette propriété. Par exemple, soit u solution du problème (P) défini par : trouver u : (x, y) → u(x, y) telle que : ∂ 2u ∂ 2u (x, y) + (x, y) = 0 ∀x ∈]0, a[ et ∀y ∈]0, b[ ∂x2 ∂y 2 ∂u ∂u (0, y) = χ(y) et (a, y) = η(y) ∀y ∈]0, b[ ∂n ∂n u(x, 0) = ϕ(x) et u(x, b) = ψ(x) ∀x ∈]0, a[ (3.48) (3.49) (3.50) (3.51) alors u est la somme de u1 et u2 , solutions respectives des problèmes (P1) et (P2) suivants : ∂ 2 u1 ∂ 2 u1 (x, y) + (x, y) = 0 ∀x ∈]0, a[ et ∀y ∈]0, b[ ∂x2 ∂y 2 ∂u1 ∂u1 (0, y) = 0 et (a, y) = 0 ∀y ∈]0, b[ ∂n ∂n u1 (x, 0) = ϕ(x) et u1 (x, b) = ψ(x) ∀x ∈]0, a[ (3.52) (3.53) (3.54) et : ∂ 2 u2 ∂ 2 u2 (x, y) + (x, y) = 0 ∀x ∈]0, a[ et ∀y ∈]0, b[ (3.55) ∂x2 ∂y 2 ∂u2 ∂u2 (0, y) = χ(y) et (a, y) = η(y) ∀y ∈]0, b[ (3.56) ∂n ∂n u2 (x, 0) = 0 et u2 (x, b) = 0 ∀x ∈]0, a[ (3.57) 3.5 Equation de Laplace dans un domaine borné Ω quelconque Si le domaine Ω est de forme quelconque (ni rectangle, ni cercle), il n’est pas possible de donner une solution explicite comme dans les deux cas précédents. 30 Mathématiques et méthodes numériques On peut seulement chercher une solution numérique à l’aide de la méthode des éléments finis et après avoir écrit le problème sous la forme faible. On obtient cette forme faible en multipliant l’équation (3.1) par une fonction quelconque ϕ(x, y) et en intégrant sur le domaine Ω . En utilisant la deuxième formule de Green on a : Z Z Z ∂u ϕ∆u = ϕ − grad ϕ.grad u (3.58) Ω ∂Ω ∂n Ω d’où : Z ∂u 0= ϕ − ∂Ω ∂n Z grad ϕ.grad u (3.59) Ω Il reste ensuite à tenir compte des conditions aux bords. Ceci sera étudié en détail en GM5. 3.6 Propriétés fondamentales des fonctions harmoniques Une propriété remarquable des fonctions harmoniques, c’est à dire telles que ∆u = 0 , est le principe suivant : 3.6.1 Principe du maximum Théorème 3.6.1 Si u est une fonction deux fois continûment dérivable qui vérifie ∆u = 0 dans l’ouvert Ω , et si u n’est pas constante, alors u atteint son maximum sur le bord de Ω . 3.6.2 Unicité de la solution Nous avons utilisé des méthodes très diverses pour trouver des solutions de l’équation de Laplace avec des conditions de Dirichlet ou de Neumann sur le bord du domaine. La question qui se pose est de savoir si la solution est unique. Le principe du maximum entraine l’unicité de la solution du problème suivant. Théorème 3.6.2 Le problème suivant a une solution u et cette solution est unique si Γ1 est un ouvert non vide du bord ∂Ω et si Γ1 ∪ Γ2 = ∂Ω L’équation de Laplace 31 ∆u = 0 dans Ω u = ϕ sur Γ1 ∂u = η sur Γ2 ∂n (3.60) (3.61) (3.62) Si Γ2 = ∂Ω et donc si Γ1 est vide, il est clair que, si il y a une solution u , alors il en a une infinité puisque pour toute constante c , la fonction u + c est aussi solution. Alors, il n’y a pas unicité. 3.6.3 Propriété de la moyenne Théorème de la moyenne Si u est une fonction deux fois continûment dérivable qui vérifie ∆u = 0 dans le disque D , alors la valeur de u au centre est égale à la moyenne des valeurs de u sur le bord de D. La démonstration est basée sur la troisième formule de Green : Z Z ∂ψ ∂ϕ ϕ∆ψ − ψ∆ϕ = ϕ −ψ ∂n Ω ∂Ω ∂n (3.63) On pose ψ = u , on choisit pour fonction ϕ une fonction harmonique dans le cercle D privé de son centre et on prend pour domaine Ω, l’anneau formé par le disque D privé du disque de rayon ² petit. Dans IR2 on peut prendre pour fonction ϕ la fonction ln r où r est la distance du point considéré au centre du disque. On obtient alors le résultat, en faisant tendre ² vers 0 . Un théorème similaire se démontre dans une sphère de IR3 (on choisit alors ϕ(r) = 1r ). 32 Mathématiques et méthodes numériques Chapitre 4 L’équation de la chaleur ou équation de la diffusion Introduction aux problèmes paraboliques. 4.1 Equation de la chaleur dans IRn Définition 4.1.1 Soit u(x, y, ..., t) une fonction des variables d’espace (x, y, ...) et du temps t , définie sur un domaine D de IRn et pour t positif. L’équation de la chaleur pour la fonction u s’écrit : ∂u − ∆u = f ∂t (4.1) avec f donnée. C’est cette équation qui régit, entre autre, l’évolution de la température u en un point (x, y, z) d’un domaine Ω au cours du temps t en présence d’une source de chaleur volumique définie par f . C’est cette même équation qui décrit l’évolution de la concentration d’un produit dans un solvant (d’où le nom d’équation de la diffusion) . L’étude mathématique de l’équation monodimensionelle (c. à d. dans IR) va permettre de dégager, dans un cas simple, les principales propriétés des problèmes regroupés sous le vocable de problèmes paraboliques (cf. ch. 6). 4.2 Equation de la chaleur dans IR Considérons le problème physique suivant : on veut connaı̂tre la température dans une barre infinie, sans apport de chaleur et dont la température est initialement 33 34 Mathématiques et méthodes numériques donnée. Le modèle correspondant s’écrit : trouver u : (x, t) → u(x, t) telle que : ∂u ∂ 2u (x, t) − 2 (x, t) = 0 ∀x ∈ IR et ∀t ∈ IR+ ∂t ∂x u(x, 0) = u0 (x) donnée 4.2.1 (4.2) (4.3) (4.4) Transformée de Fourier Pour résoudre ce problème nous allons utiliser la transformée de Fourier . Soit F (ν, t) la transformée de Fourier de u par rapport à la variable d’espace x. Elle est définie par : Z +∞ F (ν, t) = exp(−2iπνx) u(x, t) dx (4.5) −∞ La transformation de Fourier de l’équation (4.3) : ∂ ∂2 u(x, t) − 2 u(x, t) = 0 ∂t ∂x (4.6) donne : ∂ F (ν, t) + 4π 2 ν 2 F (ν, t) = 0 (4.7) ∂t La résolution de l’équation différentielle du premier ordre en temps ci-dessus donne donc : F (ν, t) = exp(−4π 2 ν 2 t) F (ν, 0) (4.8) où F (ν, 0) est la transformée de Fourier de la condition initiale u0 . Or on sait d’après les tables de transformées de Fourier que : exp(−4π 2 ν 2 t) = F ( √ 1 x2 exp(− )) 4t 4πt (4.9) et que : F (f ∗ g) = F (f ) F (g) (4.10) La transformée de Fourier de la solution u est égale au produit des transformées 2 1 de Fourier de u0 et √4πt exp(− x4t ) . Donc u est le produit de convolution de ces deux fonctions : Z +∞ 1 (x − y)2 u(x, t) = √ exp(− ) u0 (y) dy (4.11) 4t 2 πt −∞ L’équation de la chaleur 35 Cas particulier Cas de la fonction échelon définie par ½ u0 (x) = 0 u0 (x) = a pour pour x<0 x≥0 On obtient alors : 1 u(x, t) = √ 2 πt Z +∞ −∞ y2 a exp(− ) u0 (x − y) dy = √ 4t 2 πt Z x exp(− −∞ y2 ) dy 4t En introduisant la fonction erf définie par : Z z 2 exp(−η 2 ) dη erf(z) = √ π 0 et en posant z = x √ 2 t (4.12) (4.13) on a : a u(x, t) = 2 µ ¶ x 1 + erf( √ ) 2 t (4.14) On constate que cette solution est une fonction continue et dérivable de x pour tout t strictement positif bien que la donnée initiale soit discontinue en x = 0 . 4.2.2 Commentaires Nous en déduisons cinq propriétés fondamentales de la solution u de l’équation de la chaleur. 1. La solution en un point particulier dépend de la condition initiale en tous les points du domaine. Le domaine de dépendance de la solution s’étend au domaine Ω tout entier. 2. Une perturbation en un point quelconque de la solution initiale influence immédiatement la valeur en tout point de la solution u. On dit que la vitesse de propagation est infinie. 3. La valeur ponctuelle de la solution décroı̂t au cours du temps en 1 √ . t 4. t doit être positif. Le phénomène est irréversible, on ne peut pas remonter le temps. 5. L’équation de la chaleur ou de diffusion a un effet régularisant. La donnée initiale peut être discontinue, pour tout t strictement positif la solution est une fonction continue et dérivable de x . 36 4.3 Mathématiques et méthodes numériques Equation de la chaleur sur un segment On considère une barre de longueur L dont la température est fixée à zéro aux extrémités et dont la température initiale est donnée. L’équation de la température au cours du temps s’écrit : trouver u : (x, t) → u(x, t) telle que : ∂u ∂ 2u ∀x ∈ [0, L] et ∀t ∈ IR+ (x, t) − 2 (x, t) = 0 ∂t ∂x u(x, 0) = u0 (x) donnée initiale u(0, t) = u(L, t) = 0 Dirichlet homogène 4.3.1 (4.15) (4.16) (4.17) (4.18) Méthode de séparation des variables On peut montrer que dans l’espace L2 [0, L] des fonctions de carré sommable sur [0, L] , les fonctions propres de l’opérateur − ∂2 avec conditions de Dirichlet homogènes ∂x2 associées aux valeurs propres λk = φk (x) = sin( k2 π 2 L2 (4.19) sont les fonctions φk définies par kπ x) pour k = 1, 2, ...n, .. L (4.20) On peut vérifier que les fonctions φk forment une famille orthogonale de l’espace L2 [0, L] pour le produit scalaire usuel. On sait d’autre part qu’elles engendrent cet espace. Elles forment donc ce qu’on appelle une base Hilbertienne de l’espace de Hilbert L2 [0, L]. Si on cherche une solution u dans L2 [0, L], cette solution s’exprime donc comme une combinaison linéaire des φk X u(x, t) = uek (t)φk (x) (4.21) k de même f peut s’écrire sous la même forme : X f (x, t) = fek (t)φk (x) (4.22) k En reportant ces expressions de u et de f dans l’équation aux dérivées partielles, on obtient pour chaque composante uek (t) une équation différentielle en temps : k2π2 ∂ uek (t) + 2 uek (t) = fek (t) ∂t L (4.23) L’équation de la chaleur 37 dont la solution s’écrit : k2π2 uek (t) = uek (0) exp(− 2 t) + L Z t exp(− 0 k2π2 (t − s))fek (s) ds L2 (4.24) Dans le cas particulier f = 0 , on trouve : uek (t) = uek (0) (4.25) où les uek (0) représentent les coefficients du developpement en série de Fourier de sinus de la donnée initiale u0 (x) . On admet la convergence dans L2 [0, L] de la série de Fourier de coefficients uek (t) vers la solution u du problème et ceci ∀t. 4.3.2 Remarques importantes La décomposition en modes propres présentée ci-dessus est possible en raison de la propriété essentielle de linéarité du problème de la chaleur et de son corollaire : le principe de superposition. La résolution du problème par séparation de variable peut paraitre ici différente de la résolution proposée au chapitre précédent. En fait, on a ici simplement ommis la recherche des modes propres qui est laissée aux soins du lecteur. Ceci allège considérablement l’exposé mais la démarche est similaire. On peut, enfin, remarquer l’effet lissant de l’équation de la chaleur. En effet, 2 2 exp(− kLπ2 t) décroit d’autant plus vite que k est grand. Donc les hautes fréquences sont plus vites amorties, ce qui a un effet lissant. 4.4 4.4.1 Unicité de la solution Equation de la chaleur dans un segment La démonstration fait intervenir une quantité dépendant du temps E(t) qui est liée à l’énergie du système. Soit u une solution de l’équation de la chaleur : ∂u ∂ 2 u − 2 =0 ∂t ∂x (4.26) 38 et soit E(t) = signe intégral, Mathématiques et méthodes numériques 1 2 RL 0 |u(x, t)|2 dx , alors d’après le théorème de dérivation sous le Z L 0 E (t) = u(x, t) 0 ∂u (x, t)dx ∂t donc d’après (4.26) : Z 0 L ∂ 2u (x, t)dx ∂x2 0 Z L ∂u ∂u ∂u L = [u(x, t) (x, t)]0 − (x, t). (x, t)dx ∂x ∂x 0 ∂x E (t) = u(x, t) Si la condition au bord est une condition de Dirichlet homogène (ou de Neumann homogène) la relation ci-dessus montre que E 0 (t) est une quantité négative, par suite E(t) est une fonction décroissante du temps. Donc E(t) est une quantité positive majorée par sa valeur pour t = 0. On utilise cette propriétés pour démonter l’unicité de la solution. Si u1 et u2 sont deux solutions du problème : ∂u ∂ 2 u − 2 =f dans ]0, L[× ]0, T [ ∂t ∂x u(0, t) = u(L, t) = 0 sur ]0, T [ 0 u(x, o) = u (x) sur ]0, L[ En posant w = u1 - u2 et en utilisant la linéarité et le principe de superposition, on vérifie que w vérifie le problème : ∂w ∂ 2 w − =0 dans ]0, L[× ]0, T [ ∂t ∂x2 w(0, t) = w(L, t) = 0 sur ]0, T [ w(x, o) = 0 sur ]0, L[ R R Donc si on note E(t) = 12 Ω |w(x, t)|2 dx comme E(0) = 12 Ω |w(x, 0)|2 dx = 0, et que E(t) est une fonction positive décroissante, on en déduit E(t) = 0 pour tout t et donc que la fonction w est identiquement nulle .Donc u1 = u2 , ce qui prouve l’unicité de la solution. La démontration est encore valable pour une condition de Neumann sur le bord. L’équation de la chaleur 4.4.2 39 Equation de la chaleur dans un domaine quelconque Comme précédemment, on étudie l’évolution au cours du temps de la quantité : Z 1 E(t) = |u(x, t)|2 dx (4.27) 2 Ω sachant que u est solution de l’équation : ∂u − ∆u = f ∂t avec des conditions au bord de type Neumann ou Dirichlet. La démonstration est laissée au lecteur. Elle fait intervenir les formules intégrales de Gauss. 40 Mathématiques et méthodes numériques Chapitre 5 L’équation des ondes Introduction aux problèmes hyperboliques. 5.1 L’équation des ondes dans IRn Définition 5.1.1 Soit u(x, y, ..., t) une fonction des variables d’espace (x, y, ...) et du temps t , définie sur un domaine Ω de IRn et pour t positif. L’équation des ondes pour la fonction u s’écrit : ∂ 2u − ∆u = 0 ∂t2 (5.1) C’est cette équation qui régit, entre autre, l’évolution de la pression u en un point (x, y, z) d’un domaine Ω au cours du temps t . L’étude mathématique de l’équation monodimensionelle (c. à d. dans IR) va permettre de dégager, dans un cas simple, les principales propriétés des problèmes regroupés sous le vocable de problèmes hyperboliques (cf. ch. 6). Les développements suivants sont largement inspirés du livre : Méthodes mathématiques de la physique de Laurent Schwartz (5.2) dont la lecture est fortement recommandée. 5.2 Equation des ondes dans IR L’étude des vibrations d’une corde infinie, libre de toute sollicitation, consiste à étudier les variations du déplacement transversal u au cours du temps. On se donne la position u et la vitesse du déplacement transversal u au temps zéro. 41 42 Mathématiques et méthodes numériques Le modèle correspondant s’écrit : trouver u : (x, t) → u(x, t) telle que : ∂2u ∂ u (x, t) − (x, t) = 0 ∀x ∈ IR et ∀t ∈ IR+ ∂t2 ∂x2 u(x, 0) = u0 (x) donnée ∂u (x, 0) = u1 (x) donnée ∂t (5.3) 2 5.2.1 (5.4) (5.5) (5.6) Changement de variables Posons y = x + ct z = x − ct En remplaçant dans l’équation les dérivées partielles par rapport à t et x par leurs expressions en fonctions des dérivées partielles par rapport aux nouvelles variables y et z, on obtient ∂ 2u =0 (5.7) ∂y∂z d’où l’on déduit : ∂u = g1 (z) (5.8) ∂z soit : u = g(z) + f (y) (5.9) Ce qui donne en définitive l’expression remarquable suivante : u(x, t) = f (x + ct) + g(x − ct) (5.10) Prenant en compte les conditions initiales u(x, 0) = f (x) + g(x) = u0 (x) on obtient : et ∂ u(x, 0) = cf 0 (x) − cg 0 (x) = u1 (x) ∂t 1 1 f (x) = u0 (x) + 2 2c 1 1 g(x) = u0 (x) − 2 2c Z x (5.11) u1 (s)ds (5.12) u1 (s)ds (5.13) 0 Z x 0 d’où la formule de d’Alembert : 1 1 u(x, t) = [u0 (x + ct) + u0 (x − ct)] + 2 2c Z x+ct x−ct u1 (s)ds (5.14) L’équation des ondes 5.2.2 43 Commentaires Nous en déduisons quatre propriétés fondamentales de la solution de l’équation des ondes 1. L’expression f (x+ct) prend au point x et à l’instant t la même valeur qu’au point x+ct au temps zéro. De même g(x−ct) prend au point x et à l’instant t la valeur qu’elle prenait au point x − ct au temps zéro. La solution u au point x et au temps t apparaı̂t comme la somme de deux ondes, l’une f se propageant avec une vitesse −c, donc de droite à gauche, l’autre g se propageant avec une vitesse c donc de gauche à droite. c apparait comme une vitesse de propagation d’onde (mais non bien sûr comme la vitesse des points de la corde). 2. Domaine de dépendance : la solution au point x et au temps t ne dépend que des valeurs des conditions initiales u0 et u1 aux points de l’intervalle [x−ct, x+ct]. Inversement les conditions initiales au temps zéro en un point ξ n’influencerons la solution aux instants t que pour les seules abscisses x comprises entre ξ − ct et ξ + ct. La figure 1 ci-dessous illustre simplement cette notion fondamentale de domaine de dépendance. Les droites x − ct = cste et x + ct = cste s’appellent les droites caractéristiques. 3. Si u1 = 0 , la solution ne dépend que des valeurs de u0 aux points x − ct et x + ct. Une perturbation en un point quelconque de la solution initiale se transmet pour moitié vers la droite avec une vitesse c et pour moitié vers la gauche avec la même vitesse absolue c car dans ce cas 1 u(x, t) = [u0 (x − ct) + u0 (x + ct)] 2 (5.15) Il est alors facile d’obtenir une solution à partir de conditions initiales simples par transport et en particulier d’observer l’évolution de solutions initiales discontinues de type échelon. 4. La variable t peut être positive ou négative. Le phénomène est réversible, on peut remonter le temps et retrouver, par résolution de problèmes rétrogrades, la solution à un instant précédent. 44 5.3 Mathématiques et méthodes numériques L’équation des ondes dans un segment On considère une corde de longueur L fixée aux extrémités. L’équation du déplacement transversal au cours du temps s’écrit : trouver u : (x, t) → u(x, t) telle que : ∂ 2u ∂ u (x, t) − (x, t) = 0 ∀x ∈ [0, L] et ∀t ∈ R+ ∂t2 ∂x2 u(x, 0) = u0 (x) donnée initiale ∂u (x, 0) = u1 (x) donnée initiale ∂t u(0, t) = u(L, t) = 0 Dirichlet homogènes (5.16) 2 5.3.1 (5.17) (5.18) (5.19) (5.20) Méthode de séparation des variables On utilise, encore une fois, les fonctions φk définies par φk (x) = sin( kπ x) k = 1, 2, ...n, .. L (5.21) qui sont les fonctions propres de l’opérateur − ∂2 avec conditions de de Dirichlet homogènes sur [0, L] ∂x2 (5.22) 2 2 associées aux valeurs propres λk = kLπ2 . Comme on le sait, les fonctions φk forment une famille orthogonale de l’espace de fonctions L2 [0, L]. De plus elles engendrent cet espace L2 [0, L]. Si on cherche u dans cet espace, on peut donc exprimer la solution u comme combinaison linéaire des φk X u(x, t) = uek (t)φk (x) (5.23) k En reportant cette expression de u dans l’équation aux dérivées partielles, on obtient un ensemble d’équations différentielles du second ordre en temps indépendantes pour chaque k : ∂ 2 uek k 2 π 2 + 2 uek = 0 ∂t2 L (5.24) Dans ce cas sans second membre, la solution s’écrit sous la forme générale : uek (t) = Ak cos( kπ kπ ct) + Bk sin( ct) L L (5.25) L’équation des ondes 45 On trouve donc : u(x, t) = X kπ kπ kπ [ Ak cos( ct) + Bk sin( ct) ] sin( x) L L L k (5.26) Les coefficients Ak et Bk sont déterminés à l’aide des conditions initiales : X kπ ∂ kπ kπ kπ kπ u(x, t) = [− cAk sin( ct) + cBk cos( ct) ] sin( x) ∂t L L L L L k (5.27) d’où : u0 (x) = X Ak sin( k u1 (x) = X kπ k L kπ x) L cBk sin( kπ x) L (5.28) (5.29) Il suffit donc de connaitre les développements en séries de sinus des données initiales pour déterminer les coefficients Ak et Bk . 5.3.2 Remarques Les données initiales sont définies pour ∀x ∈ [0, L] . Les calculs précédants sont donc valables pour ∀x ∈ [0, L] et ∀t ∈ IR+ Si on veut prolonger u(x, t) pour des x exterieurs à [0, L] , comme les modes propres correspondants aux conditions de Dirichlet homogènes sur [0, L] sont les fonctions φk (x) = sin( kπ x) , il est naturel L de prolonger u en une fonction impaire par rapport à x et de période 2L en x. Par ailleurs d’après (5.26) la fonction u est périodique en t de période 2L/c. Contrairement à l’équation de la chaleur, il n’est pas nécessaire ici que t soit positif. 46 Mathématiques et méthodes numériques Chapitre 6 Classification des E.D.P. quasi-linéaires du deuxième ordre 6.1 6.1.1 E.D.P. quasi-linéaires du deuxième ordre définies dans R2 Définitions Une équation aux dérivées partielles quasi-linéaire du second ordre est du type : a(x, y) ∂ 2u ∂2u ∂ 2u ∂u ∂u + 2b(x, y) + c(x, y) = F (x, y, u, , ) ∂x2 ∂x∂y ∂ 2y ∂x ∂y (6.1) où u(x, y) est la fonction inconnue et où a, b, c et F sont quatres fonctions définies sur un domaine Ω ⊂ R2 et à valeurs dans R. Définition 6.1.1 Une courbe est dit caractéristique par rapport à l’e.d.p. (6.1) si on a : a(x, y) (dy)2 − 2b(x, y) dxdy + c(x, y) (dx)2 = 0 (6.2) Si a = 0 et c = 0 , ce sont des droites x = cste et y = cste. Si a 6= 0, on peut aussi écrire l’équation (6.2) sous la forme : a(x, y) ( dy 2 dy ) − 2b(x, y) + c(x, y) = 0 dx dx (6.3) dy L’équation du second degré à coefficents réels en dx (6.3) peut avoir 2 racines réelles ou 1 double ou 2 complexes conjuguées selon le signe du disciminant 4(b2 − ac). Les équations aux dérivées partielles quasi-linéaires du second ordre sont classées en trois catégories selon le signe de b2 − ac. 47 48 Mathématiques et méthodes numériques 6.1.2 Classification des e.d.p. quasi-linéaires du second ordre – si b(x, y)2 − a(x, y)c(x, y) > 0 dans un domaine D , l’équation est dite hyperbolique dans ce domaine et elle y admet deux familles de courbes caractéristiques, – si b(x, y)2 − a(x, y)c(x, y) = 0 dans un domaine D , l’équation est dite parabolique dans ce domaine et elle y admet une famille de courbes caractéristiques, – si b(x, y)2 − a(x, y)c(x, y) < 0 dans un domaine D , l’équation est dite elliptique dans ce domaine et elle n’admet pas de courbes caractéristiques réelles. 6.2 6.2.1 Réduction à la forme standard Equations hyperboliques Soit ϕ(x, y) = cste et ψ(x, y) = cste les équations cartésiennes des deux familles de courbes caractéristiques. En faisant le changement de variables X = ϕ(x, y) et Y = ψ(x, y) , l’équation (6.1) devient ∂ 2U ∂U ∂U = G(X, Y, U, , ) (6.4) ∂X∂Y ∂X ∂Y où U (X, Y ) = U (ϕ(x, y), ψ(x, y)) = u(x, y). En faisant le changement de variables X = ϕ(x, y) + ψ(x, y) et Y = ϕ(x, y) − ψ(x, y) , l’équation (6.1) devient ∂2U ∂ 2U ∂U ∂U − = H(X, Y, U, , ) ∂X 2 ∂Y 2 ∂X ∂Y (6.5) Ce sont les deux formes standards d’une équation hyperbolique. On constate que l’équation des ondes fait partie des équations de type hyperbolique. 6.2.2 Equations paraboliques Soit ϕ(x, y) = cste l’ équation cartésienne de l’unique famille de courbes caractéristiques. En faisant X = ϕ(x, y) et en posant Y égale à une fonction arbitraire de x et y mais indépendante de la fonction ϕ(x, y), l’équation (6.1) devient ∂ 2U ∂U ∂U = G(X, Y, U, , ) 2 ∂X ∂X ∂Y (6.6) Classification des E.D.P. du deuxième ordre 49 Ceci est la forme standard d’une équation parabolique . On constate que l’équation de la chaleur fait partie des équations de type parabolique. 6.2.3 Equations elliptiques L’équation n’admet pas de courbes caractéristiques réelles mais elle admet deux familles de courbes caractéristiques complexes. Soit ϕ(x, y)+iψ(x, y) = cste et ϕ(x, y)−iψ(x, y) = cste les équations cartésiennes de ces courbes. En faisant le changement de variables X = ϕ(x, y) et Y = ψ(x, y) , l’équation (6.1) devient ∂ 2U ∂ 2U ∂U ∂U + = G(X, Y, U, , ) (6.7) ∂X 2 ∂Y 2 ∂X ∂Y En faisant le changement de variables X = ϕ(x, y) + iψ(x, y) et Y = ϕ(x, y) − iψ(x, y) , l’équation (6.1) devient ∂ 2U ∂U ∂U = H(X, Y, U, , ) ∂X∂Y ∂X ∂Y (6.8) mais les coefficients sont alors des nombres complexes. Ce sont les deux formes standards d’une équation elliptiques. On constate que l’équation de Laplace fait partie des équations de type elliptique. 6.2.4 Exemple Soit l’équation : x2 2 ∂ 2u ∂ 2u 2∂ u + 2xy + y =0 ∂x2 ∂x∂y ∂ 2y (6.9) On a b(x, y)2 − a(x, y)c(x, y) = 0 , l’équation est parabolique, elle y admet une famille de courbes caractéristiques définies par : x2 (dy)2 − 2xy dxdy + y 2 (dx)2 = 0 dy c’est à dire dx = xy , d’où y = kx, ou encore choisit, par exemple, Y = y. L’équation (??) devient : 2∂ 2 U =0 Y ∂Y 2 ou y x = k. On pose donc X = ∂ 2U =0 ∂Y 2 (6.10) y x et on (6.11) La forme générale des solutions est : U (X, Y ) = f (X)Y + g(X) (6.12) 50 Mathématiques et méthodes numériques d’où y y u(x, y) = f ( )y + g( ) x x Remarque : Le choix de la deuxième variable est arbitraire, il faut seulement que les fonctions définissant X et Y soient fonctionnellement indépendantes. Il faut et il suffit pour cela que le déterminant jacobien du changement de variable soit différent de zéro. · ∂X ∂X ¸ ∂x ∂y 6= 0 (6.13) det ∂Y ∂Y ∂x 6.3 ∂y E.D.P. quasi-linéaires du deuxième ordre définies dans R3 Si l’E.D.P. s’écrit : 3 X i=1,j=1 aij ∂u ∂u ∂u ∂ 2u = F (x1 , x2 , x3 , u, , , ) ∂xi ∂xj ∂x1 ∂x2 ∂x3 (6.14) et si la matrice A = [aij ] a des valeurs propres réelles alors l’E.D.P. est de type : – elliptique si toutes les valeurs propres ont mêmes signes, – hyperbolique si au moins une valeur propre a un signe différent, – parabolique si une valeur propre au moins est nulle. 6.4 Problème de Cauchy Une courbe de R2 peut être définie soit par son équation cartésienne : f (x, y) = 0 (6.15) soit par sa représentation paramétrique : x = x(t) y = y(t) (6.16) exemple : un cercle de centre l’origine et de rayon 3 a pour équation x2 + y 2 = 9 (6.17) et une de ses représentations paramétriques est : x = 3 cos(θ) y = 3 sin(θ) avec θ ∈] − π, π] . (6.18) (6.19) Classification des E.D.P. du deuxième ordre 51 Définition 6.4.1 Le problème de Cauchy relatif à une courbe (C) consiste à chercher (si elle existe) la solution de l’équation a(x, y) ∂ 2u ∂ 2u ∂ 2u ∂u ∂u + 2b(x, y) + c(x, y) = F (x, y, u, , ) ∂x2 ∂x∂y ∂ 2y ∂x ∂y dans Ω ⊂ R2 , (6.20) qui vérifie u(x, y) = g(x, y) sur (C) (6.21) du (x, y) = h(x, y) sur (C) (6.22) dn Théorème 6.4.1 Si la courbe (C) n’est pas caractéristique le problème de Cauchy a une solution et cette solution est unique. Si la courbe (C) est une courbe caractéristique le problème de Cauchy peut ne pas avoir de solution ou il peut en avoir une infinité. Démonstration : Montrons que la courbe (C) ne doit pas être caractéristique pour que le problème de Cauchy puisse avoir une solution Se donner u sur (C) implique que l’on connait aussi la dérivée de u dans la du direction tangentielle à la courbe et si on se donne en plus dn cela revient à se ∂u ∂u donner u, ∂x ,et ∂y sur (C). Si la courbe (C) est définie par la représentation paramétrique x = x(s) y = y(s) (6.23) (6.24) une condition nécessaire pour qu’il y aı̂t une solution unique, est que l’équation (6.20) permette de définir de façon unique sur (C) les dérivées partielles d’ordre deux de u. On sait que u(x(s), y(s)) = g(x(s), y(s)) = G(s) ∂u (x(s), y(s)) = h1 (x(s), y(s)) = H1 (s) ∂x ∂u (x(s), y(s)) = h2 (x(s), y(s)) = H2 (s) ∂y Des 2 dernières équations on déduit ∂2u ∂ 2u 0 + y (s) = H10 (s) ∂x2 ∂x∂y ∂ 2u ∂2u x0 (s) + y 0 (s) 2 = H20 (s) ∂x∂y ∂y x0 (s) 52 Mathématiques et méthodes numériques et de (6.20) a(x(s), y(s)) ∂2u ∂2u ∂ 2u +2b(x(s), y(s)) +c(x(s), y(s)) = F (x(s), y(s), G(s), H1 (s), H2 (s)) ∂x2 ∂x∂y ∂ 2y 2 2 2 ∂ u ∂ u Pour que ce système linéaire de 3 équations à 3 inconnues ∂∂xu2 , ∂x∂y , ∂y2 , aı̂t une solution unique il faut et il suffit que le déterminant soit nul, d’où ¯ ¯ 0 0 ¯ x y 0 ¯ ¯ ¯ ¯ 0 x0 y 0 ¯ = a (y 0 )2 − 2b x0 y 0 + c (x0 )2 6= 0 ¯ ¯ ¯ a 2b c ¯ Comme x0 (s) = dx et que y 0 (s) = dy , on reconnait la condition définissant une ds ds courbe qui n’est pas caractéristique. Remarque Si la fonction u(x, y) présente une discontinuité en un point , cette discontinuité se propage le long d’une courbe caractéristique. Chapitre 7 Principes généraux des méthodes numériques 7.1 Introduction Les mathématiques utilisent couramment les notions d’infini et de continu. La solution exacte d’un problème d’équations différentielles ou aux dérivées partielles est une fonction continue. Les ordinateurs ne connaissent que le fini et le discret. Les solutions approchées seront calculées en définitive comme des collections de valeurs discrètes sous la forme de composantes d’un vecteur solution d’un problème matriciel. 7.2 Taille des problèmes et stockage mémoire La taille du stockage mémoire est gouvernée par deux critères. – La précision des résultats qui conduit à des exigences sur la finesse de maillage. En particulier, il sera nécessaire, afin d’assurer une bonne précision de la solution approchée, de raffiner la discrétisation dans les zones de fort gradient : fissures, discontinuités, ondes de chocs, singularités, couches limites, etc. – La nécessité d’une bonne représentation du domaine physique dans le cas de problèmes extérieurs : écoulements autour d’obstacles, propagation d’ondes, etc, problèmes qui, théoriquement, se posent en milieu infini et qui doivent, évidemment être réduits dans des domaines de taille finie lorsqu’ils sont modélisés sur un ordinateur. Disons, pour simplifier, que l’ordre de grandeur du nombre de noeuds d’un maillage, qui va conditionner le nombre d’inconnues et donc la taille des systèmes à résoudre est : 54 Mathématiques et méthodes numériques – en dimension un d’espace : environ de l’ordre de 100 et donc, – en dimension deux d’espace : environ de l’ordre de 104 – en dimension trois d’espace : environ de l’ordre de 106 7.3 Mémoires d’ordinateur On distingue, sur un ordinateur, plusieurs types de mémoire, selon leur technologie et la rapidité d’accès à un élément stocké. – mémoires caches, les plus rapides d’accès, mais aussi les plus petites. L’ordre de grandeur aujourd’hui pour un PC est de 512K octets avec un temps d’accès d’environ 10 nanosecondes. Pour un serveur performant, on peut arriver à des caches de 4 mégaoctets avec des temps d’accès de l’ordre de quelques nanosecondes. – mémoires vives, dont la taille pour un bon PC est aujourd’hui aux alentours de 512 mégaoctets, jusqu’à quelques 4 gigaoctets pour un gros serveur, avec un temps d’accès inférieur à 70 nanosecondes – mémoires disques, Pour ces mémoires la capacité est quasiment illimitée (plusieurs dizaines de gigaoctets) mais avec un temps d’accès très long : de l’ordre de 5 millisecondes. 7.4 Vitesse de calcul Les performances en temps de calcul se mesurent d’une part par la vitesse d’horloge, actuellement de l’ordre de 500 megahertz, et plus précisément en nombre d’opérations flottantes par secondes, de l’ordre du gigaflops pour une bonne machine actuelle. Par exemple une résolution de système linéaire de n équations à n inconnues, prend, par la méthode du pivot de Gauss, de l’ordre de n3 opérations. La résolution d’un système 1000 × 1000 prendra donc environ 3 1/3 secondes sur une machine à un gigaflops. Actuellement, compte-tenu de la difficulté qu’il y a à comparer les performances de machines de technologie différentes, on préfère mesurer les vitesses de calcul sur des batteries de tests normalisés. Ceci conduit à une performance mesurée en SPEC. Pour donner un ordre de grandeur, les microprocesseurs les plus rapides aujourd’hui atteignent en flottants de l’ordre de 50 SPEC. 7.5 Stratégies de calcul Les caractéristiques techniques des matériels conditionnent les stratégies de calcul. Par exemple, il est souvent impossible de stocker en mémoire vive les Principes généraux 55 systèmes d’équations provenant de problèmes industriels réels tridimensionnels. Et ceci, même en appliquant des techniques de numérotation des inconnues et de stockage optimaux. Pour ces gros cas de calcul, on devra choisir des méthodes de résolution itératives qui évitent le stockage des matrices et n’exigent que celui de vecteurs de même taille que le vecteur des inconnues. Par contre, ces méthodes ne convergent pas forcément rapidement et peuvent donc être plus gourmandes en temps de calcul. Il y a souvent opposition entre gain en stockage mémoire et gain en temps de calcul. Il faudra donc choisir un compromis en fonction de son matériel et du problème à résoudre. 7.6 Représentation des nombres dans un ordinateur Répétons-le, l’ordinateur appartient au domaine du discret et du fini. Il ne peut contenir qu’un nombre fini (même s’il est très grand) d’informations. Les mathématiques nous ont familiarisés avec l’usage de l’infini et du continu, et beaucoup de formules mathématiques utilisent ces concepts. La traduction de ces formules sur un ordinateur introduit donc nécessairement une erreur. Le calculateur électronique utilise la numérotation binaire. L’unité d’information est le bit (binary digit en anglais). En numérotation binaire un nombre entier X s’écrit uniquement avec les chiffres 0 et 1. On obtient sa représentation en le développant en puissances de 2 . Ainsi : X= p X ai 2i s’écrit X = ap ap−1 .....a0 (7.1) i=0 Donc avec n digits binaires, on peut représenter tous les nombres entiers de 0000...0 à 1111...1, soit 2n nombres compris entre 0 et 2n − 1. Par exemple avec 1 octet, c’est-à-dire 8 bits, on dispose de 256 possibilités de représentation (on peut représenter tous les nombres compris entre 0 et 255). Nous renvoyons aux ouvrages d’informatique générale pour tout ce qui concerne les codages classiques de l’information. Nous voudrions par contre rentrer dans le détail pour ce qui concerne la représentation des nombres dans les unités de calcul qui est fondamentale pour le numéricien. C’est elle qui explique les erreurs d’arrondis. On distingue sur un ordinateur les “entiers”, les “réels” ou nombres flottants et dans certains langages les “réels” ou nombres flottants en double précision. Le problème pour l’utilisateur provient de ce que ces dénominations sont trompeuses car les catégories entiers, réels, en informatique, ne correspondent pas aux définitions mathématiques. 56 Mathématiques et méthodes numériques 7.7 7.7.1 Représentation des différents types numériques Les entiers Ils sont représentés par une suite de bits organisés en octets. Par exemple un entier à 2 octets occupera 16 bits (216 = 65536) Un entier 2 - octets machine correspond donc à un entier mathématique compris entre - 32 768 et 32 767. Le type entier 4 - octets (232 = 4294967296) permet la représentation des valeurs entières comprises entre - 2 147 483 648 et 2 147 483 647. Les opérations sur les entiers, dans la mesure où le résultat est un entier représentable en machine, s’effectuent exactement. 7.7.2 Les réels ou nombres flottants Chiffres significatifs C’est la notion importante qui justifie l’écriture en virgule flottante. Le but de cette représentation est d’obtenir, pour un encombrement mémoire donné, un éventail de valeurs suffisant avec la plus grande précision possible. Il s’agit de ne pas perdre de place mémoire en caractères inutiles. Pour plus de clarté, nous nous placerons dans le système de numérotation décimale. Supposons que nous disposions de 10 caractères dont la virgule et le signe. Dans une représentation à virgule fixe, nous ne pourrons écrire que les décimaux du type suivant : ±123, 45678 On voit donc que l’éventail des nombres possibles est très limité (comme pour les entiers). Le plus petit nombre, en valeur absolue, représentable étant : ±, 00000001 Sur ce dernier exemple, 7 caractères ont été occupés par la représentation de zéros. Le seul chiffre significatif est le 1. Nombres flottants Un nombre flottant s’écrit sous la forme suivante : X = ±a.bn (7.2) a est la mantisse, b la base, n l’exposant. Plaçons-nous à nouveau en base 10 et supposons que nous disposions de 10 caractères. Répartissons-les comme suit : Principes généraux 57 1 pour le signe du nombre 3 pour l’exposant dont un pour son signe les 6 caractères restants seront affectés à la mantisse. On obtient ainsi des représentations du type suivant : ±, 123456 10±78 L’adoption d’une mantisse normalisée telle que le premier caractère à droite de la virgule soit différent de zéro assure un nombre maximal de chiffres significatifs et donc une meilleure précision. D’autre part il devient inutile de stocker la virgule, si l’on convient que, par définition, la mantisse représentée par un nombre entier naturel à 6 chiffres sera un nombre décimal compris entre 0, 100000 et 0, 999999. Il est également inutile de stocker la base qui sera une constante pour tous les nombres flottants. Dans cette représentation, on dispose d’un éventail beaucoup plus large entre ±0, 100000 10−99 et ±0, 999999 10+99 . Exemple : Supposons que l’on cherche à représenter π avec la plus grande précision possible. Dans ce système à mantisse normalisée on obtient : +0, 314159 10+1 π Considérons à présent la représentation de 10000 avec une mantisse normalisée, − nous obtenons : +0, 314159 10 3 et donc le même nombre (6) de chiffres significatifs que pour p et une précision qui passe à 10-9 . ( Si l’on n’avait pas imposé un chiffre non nul comme premier chiffre après la virgule, on aurait obtenu 0,000 314 101 avec une précision de 10-5 seulement ). 7.7.3 La représentation standard La brève introduction précédente permet de comprendre le choix fait par les principaux constructeurs pour représenter les réels en machine. Nous reprenons la forme X = ±a.bn (7.3) avec a : mantisse, β : base, n : exposant, β est égal à 2, a et n sont représentés par des binaires Voici le format standard d’un nombre réel en simple précision : Ce nombre occupe 4 octets. 58 Mathématiques et méthodes numériques - son exposant est stocké sur un octet - son signe sur 1 bit - sa mantisse occupe les 23 bits restants. Donc l’exposant prend toutes les valeurs entières entre - 128 et + 127 . La mantisse est représentée par t = 23 caractères binaires selon l’écriture : d1 d2 ...dt avec d1 = 1 Elle correspond au nombre : X= d1 d2 d3 dt + 2 + 3 + .... t β β β β (7.4) d1 d2 d3 dt + 2 + 3 + .... 23 2 2 2 2 (7.5) soit dans ce cas au nombre : X= Conséquences de ce choix de représentation 1) Le plus petit nombre en valeur absolue ou zéro machine est le nombre d’exposant minimal L et de mantisse 100....0. Le plus petit nombre obtenu est ainsi : X= 1 L β = β L−1 β (7.6) Dans notre exemple L = −128, b = 2 Le zéro machine vaut : 2−129 ' 1, 47 10−39 . 2) Le plus grand nombre en valeur absolue ou infini machine est le nombre d’exposant maximal U et de mantisse 111.....1. La mantisse vaut donc a= 1 1 1 1 + 2 + 3 + .... t = 1 − β − t β β β β (7.7) avec β = 2 et U = 127 , on obtient un infini machine de : (1 − 2−23 )2127 = 1, 7 1038 (7.8) 3) L’écart entre deux nombres successifs d’exposant n (ainsi que l’écart entre le plus grand nombre d’exposant n et le plus petit nombre d’exposant n + 1) vaut : 2−t .2n Principes généraux 59 Cet écart croı̂t exponentiellement avec n. Ceci explique pourquoi la précision en valeur absolue des calculs flottants est d’autant moins bonne que les nombres sont grands. Ainsi, la meilleure précision possible pour des calculs sur des nombres de l’ordre de 1, correspondant à des nombres d’exposant n = 0 sera : 2−t = 2−23 ' 1, 19 10−7 (7.9) Pour des nombres de l’ordre de 1000, correspondant à un exposant n = 10 (210 = 1024) , la meilleure précision possible tombe à 2−23 210 = 213 ' 1, 22 10−4 (7.10) Un grand nombre d’erreurs d’arrondis catastrophiques s’explique ainsi : on cherche à obtenir, lors d’un calcul sur ordinateur, un nombre petit par différence de nombres grands. Un exemple d’erreurs d’arrondis Essayons de calculer sur un ordinateur donnant 7 chiffres significatifs la quantité suivante : √ S = 1000 − 999999 (7.11) √ La machine opère de la manière suivante : elle calcule 999999 = 999, 9995 avec 7 chiffres significatifs. Puis elle fait la soustraction. Pour faire une soustraction, l’ordinateur donne aux termes de la soustraction le même exposant. L’exposant choisi est le plus grand : 1000 s’écrit 0, 1000000 104 avec 7 chiffres significatifs 999, 9995 s’écrit 0, 9999995 103 avec 7 chiffres significatifs. L’ordinateur commence par choisir comme exposant 4 . Du coup, nous perdons un chiffre significatif pour 999, 9995 qui s’écrit : 0, 0999999 104 . La soustraction donne alors le résultat suivant : 0, 0000001 104 soit : 0, 001 En conclusion, sur une machine calculant avec 7 chiffres significatifs de précision, on obtient : S ' 0, 001 Si l’on avait disposé d’une machine plus précise, à 9 chiffres significatifs exacts, on aurait obtenu les calculs suivants : √ 1000 = 0, 1000000000 104 999999 = 0, 999999500 103 = 0, 099999950 104 60 Mathématiques et méthodes numériques 1000 − √ 999999 = 0, 000000050 104 soit 0,0005 Avec une machine à 9 chiffres significatifs, on obtient donc un bon résultat : S = 0, 0005 On constate qu’avec 7 chiffres significatifs le résultat était totalement erroné avec une erreur relative de 100 pour 100. Cependant en conduisant les calculs différemment, on aurait pu obtenir le bon résultat même dans le cas de calculs avec 7 chiffres exacts. Mathématiquement, on a l’égalité suivante : S = 1000 − √ 999999 = 1000 + 1 √ 999999 Calculons S selon cette deuxième formule sur notre machine à 7 chiffres : on obtient : 1000 soit 0, 1000000 104 √ + 999999 soit 0, 0999999 104 = 0, 1999999 104 La division 1, 000000 donne cette fois le bon résultat 0, 0005000. 0, 1999999 104 Un autre exemple classique : le développement de l’exponentielle Calculons une valeur approchée de e−10,2 sur un ordinateur. Si l’on utilise le développement de Taylor : e−10,2 ' 1 − 10, 2 10, 22 10, 23 10, 2n + − .... + (−1)n 1! 2! 3! n! on est dans la situation catastrophique où l’on cherche à calculer un nombre de l’ordre de 3.7 10−5 par différences entre nombres dont le plus grand est de l’ordre de 3.3 103 . Comme sur des nombres de cet ordre la précision n’est que de 10−3 environ , on ne pourra évidemment pas obtenir, ne serait-ce qu’un bon chiffre significatif pour le résultat. Par contre on a également, e−10,2 = 1 e10,2 et on obtiendra un bon résultat par le calcul préalable de e10,2 ' 1 + 10, 2 10, 22 10, 23 10, 2n + + .... + 1! 2! 3! n! Principes généraux 61 En réalité, le calcul de l’exponentielle sur un ordinateur se fait de la façon suivante. On isole les puissances entières de e que l’on calcule par multiplications successives. Il ne reste alors qu’à prendre le développement de Taylor de l’exponentielle pour la partie restante de l’argument qui est donc < 1. Ce développement est donc très précis avec peu de termes. En conclusion, Ces exemples montrent qu’entre le calcul mathématique exact et le calcul sur ordinateur, les arrondis introduisent des erreurs qui peuvent avoir des effets extrêmement importants. Certaines formulations mathématiques sont moins sensibles aux erreurs d’arrondis, on dit qu’elles sont plus stables. Ce sont elles qu’il faut le plus possible utiliser. En réalité, le calculde l’exponentiellesur un ordinateur se fait de la façon suivante : on isole les puissances entières de e que l’on calcule par multiplications successives. 7.8 Grandes familles de méthodes d’approximation des équations de la physique En vue du passage d’un problème exact (continu) au problème approché (discret), on dispose de plusieurs techniques concurrentes : les différences finies, les éléments finis et les volumes finis. Chacune de ces trois méthodes correspond à une formulation différente des équations de la physique : – équilibre des forces en chaque point pour les différences finies – minimisation de l’énergie ou principe des travaux virtuels pour les éléments finis – loi de conservation et calcul des flux pour la méthode des volumes finis. Examinons rapidement les avantages et les inconvénients de chacune de ces trois méthodes. 7.8.1 Différences finies La méthode des différences finies consiste à remplacer les dérivées apparaissant dans le problème continu par des différences divisées ou combinaisons de valeurs ponctuelles de la fonction en un nombre fini de points discrets ou noeuds du maillage. Avantages : grande simplicité d’écriture et faible coût de calcul. Inconvénients : Limitation de la géométrie des domaines de calculs, difficultés de prise en compte des conditions aux limites et en général absence de résultats de majoration d’erreurs. 62 7.8.2 Mathématiques et méthodes numériques Éléments finis La méthode des éléments finis consiste à approcher, dans un sous-espace de dimension finie, un problème écrit sous forme variationnelle (comme minimisation de l’énergie, en général) dans un espace de dimension infinie. La solution approchée est dans ce cas une fonction déterminée par un nombre fini de paramètres comme, par exemple, ses valeurs en certains points (les noeuds du maillage). Avantages : Traitement possible de géométries complexes, détermination plus naturelle des conditions aux limites, possibilité de démonstrations mathématiques de convergence et de majoration d’erreurs. Inconvénients : Complexité de mise en oeuvre et coût en temps de calcul et en mémoire. 7.8.3 Volumes finis La méthode des volumes finis intègre, sur des volumes élémentaires de forme simple, les équations écrites sous forme de loi de conservation. Elle fournit ainsi de manière naturelle des approximations discrètes conservatives et est donc particulièrement bien adaptée aux équations de la mécanique des fluides : équation de conservation de la masse, équation de conservation de la quantité de mouvement, équation de conservation de l’énergie. Sa mise en oeuvre est simple si les volumes élémentaires sont des rectangles (ou des parallélépipèdes rectangles en dimension 3). Cependant la méthode des volumes finis permet d’utiliser des volumes élémentaires de forme quelconque, donc de traiter des géométries complexes, ce qui est un avantage sur les différences finies. Il existe une grande variété de méthodes selon le choix de la géométrie des volumes élémentaires et des formules de calcul des flux. Par contre, on dispose de peu de résultats théoriques de convergence. Chapitre 8 Introduction aux différences finies 8.1 Un exemple de problème en dimension 1 ½ −u00 (x) = f (x) a < x < b u(a) = α u(b) = β (8.1) C’est le problème elliptique modèle en dimension un. On considère, ici, le cas de conditions aux limites de Dirichlet. Interprétations physiques – barre élastique sous un chargement axial. – corde élastique soumise à un chargement transverse. – conduction thermique dans une barre. La méthode des éléments finis fera l’objet du cours de cinquième année. Nous nous limiterons ici à l’exposé des techniques de différences finies. Ces techniques sont les techniques de base de toutes les approches discrètes et on les retrouve, à des niveaux divers, dans toutes les familles de méthodes. 8.2 Différences finies en dimension un Toutes les méthodes numériques présupposent la discrétisation du domaine géométrique afin de passer d’un problème continu à une infinité d’inconnues à un problème discret ne comptant qu’un nombre fini d’inconnues. Dans le cas des différences finies en dimension un, on discrétise l’intervalle continu [a, b] en un nombre fini de points xi . 64 Mathématiques et méthodes numériques a xi−1 xi xi+1 b Fig. 8.1 – Discrétisation en différences finies d’un segment [a,b]. On remplace ainsi le problème continu par celui de la recherche de valeurs approchées ui des solutions exactes u(xi ) aux points xi de la discrétisation. Mais on ne peut plus, dans ce cas, conserver les opérateurs de dérivation qui s’appliquent à des fonctions continues. On les remplace par des analogues discrets, les différences divisées ou différences finies. Le type de conditions aux limites conditionne le nombre d’inconnues du problème discret. Dans le cas de conditions de Dirichlet, la solution est fixée, et donc en ces points, il n’y a pas à affecter de valeurs inconnues. Dans tous les autres cas de conditions aux limites, la valeur de la solution reste inconnue et fait donc partie du vecteur inconnu. 8.2.1 Quelques formules simples d’approximation des dérivées par des différences divisées. Pour la dérivée première : – différence divisée progressive d’ordre un : Le développement limité : u0 (xi ) = u(xi + h) − u(xi ) h 00 − u (ξi ) h 2 (8.2) conduit à l’approximation suivante : u0 (xi ) = ui+1 − ui du (xi ) ' dx xi+1 − xi (8.3) – différence divisée progressive d’ordre deux : Pour des pas réguliers de longueur h, le développement limité : u0 (xi ) = −u(xi + 2h) + 4u(xi + h) − 3u(xi ) h2 000 + u (ξi ) 2h 3 (8.4) donne la formule d’ordre deux progressive suivante : u0 (xi ) = du −ui+2 + 4ui+1 − 3ui (xi ) ' dx 2h (8.5) Différences finies 65 – différence divisée régressive d’ordre un : De même le développement limité : u0 (xi ) = u(xi ) − u(xi − h) h 00 + u (ηi ) h 2 (8.6) donne : du ui − ui−1 (xi ) ' dx xi − xi−1 – différence divisée régressive d’ordre deux : On obtient également une formule régressive d’ordre deux : u0 (xi ) = u0 (xi ) = du 3ui − 4ui−1 + ui−2 (xi ) ' dx 2h (8.7) (8.8) – différence divisée centrée : On a u0 (xi ) = u(xi + h) − u(xi − h) h2 000 − u (θi ) 2h 6 (8.9) ou bien u(xi + h2 ) − u(xi − h2 ) h2 000 u (xi ) = − u (θi ) (8.10) h 24 Ce qui conduit, dans le cas de discrétisations uniformes de pas constant h, à : 0 u0 (xi ) = du ui+1 − ui−1 (xi ) ' dx 2h ou ui+1/2 − ui−1/2 h (8.11) On a noté ui+1/2 et ui−1/2 les valeurs approchées de u aux points xi + xi − h2 respectivement. h 2 et Pour la dérivée seconde : – différence divisée centrée Dans le cas particulier de points xi régulièrement espacés d’un pas h uniforme, on retrouve en utilisant : u0 (xi + h2 ) − u0 (xi − h2 ) h2 (4) u (xi ) = − u (θi ) h 24 00 (8.12) et (2.9) : u00 (xi ) = u(xi + h) − 2 u(xi ) + u(xi − h) h2 (4) − u (θi ) h2 12 (8.13) d’où : la discrétisation centrée classique de la dérivée seconde u00 (xi ) = d2 u ui+1 − 2ui + ui−1 (x ) ' i dx2 h2 (8.14) 66 Mathématiques et méthodes numériques Pour la dérivée troisième : – différence divisée progressive Dans le cas particulier de points xi régulièrement espacés d’un pas h uniforme, on obtient la formule décentrée progressive (d’ordre un) : u000 (xi ) = d3 u ui+3 − 3ui+2 + 3ui+1 − ui (xi ) ' 3 dx h3 (8.15) On obtiendrait de même une différence divisée regressive. – différences divisées centrées On a deux formules possibles. L’une utilisant des points milieux de segments u000 (xi ) = ui+3/2 − 3ui+1/2 + 3ui−1/2 − ui−3/2 d3 u (xi ) ' 3 dx h3 (8.16) L’autre utilisant les noeuds du maillages. d3 u ui+2 − 2ui+1 + 2ui−1 − ui−2 (xi ) ' 3 dx h3 Ces deux formules centrées sont d’ordre deux. u000 (xi ) = (8.17) Pour la dérivée quatrième : – différence divisée centrée Dans le cas particulier de points xi régulièrement espacés d’un pas h uniforme, on retrouve en utilisant : u00 (xi ) = u0 (xi + h2 ) − u0 (xi − h2 ) h2 (4) − u (θi ) h 24 (8.18) deux fois la discrétisation centrée classique d’ordre deux de la dérivée quatrième d4 u ui+2 − 4ui+1 + 6ui − 4ui−1 + ui−2 (xi ) ' (8.19) 4 dx h4 On peut observer que l’on retrouve dans ces formules les coefficients du développement du binôme. uIV (xi ) = 8.3 Problème discret Discrétisons le segment [a, b] en N sous-intervalles de longueur uniforme h. Notons ui les inconnues du problème approché. Les inconnues réelles seront donc les ui pour i = 1 à N − 1. Les valeurs deu0 et uN étant données par les conditions aux limites de Dirichlet aux poits a et b. Différences finies 67 On obtient ainsi le système de N − 1 équations linéaires suivant dont la résolution donne les valeurs ui de la solution approchée du problème (2.1) ( ui+1 − 2ui + ui−1 = fi pour i = 1, N − 1 h2 avec u0 = α uN = β − (8.20) Ce qui s’écrit sous forme matricielle : 2 −1 1 2 h 0 0 u f + α/h2 1 1 0 f2 u2 0 f u = .. i i . ... −1 uN −2 fN −2 −1 2 fN −1 + β/h2 uN −1 −1 0 · · · 2 −1 · · · .. . ... .. . ... ··· ··· (8.21) Il ne reste alors plus qu’à résoudre ce système linéaire par des techniques standard de factorisation ( méthodes de Gauss LU ou méthode de Choleski LLT ) 8.4 Problème mixte Dirichlet-Neumann Soit, maintenant, le problème ½ 00 −u (x) = f (x) a<x<b u(a) = α u0 (b) = β (8.22) où l’on a, cette fois, une condition de Neumann en b. Les modifications du problème discrétisé sont les suivantes. Tout d’abord, le nombre d’inconnues a changé. Il y a une inconnue au point b. En effet, la donnée de u0 (b) ne dit rien de la valeur de u(b). C’est donc une nouvelle inconnue du problème. Le problème discret a donc maintenant, sur la base du même maillage, N inconnues ui pour i = 1 à N . D’autre part, il faut proposer une formule discrétisée de la condition de Neumann u0 (b) = β. Or, on l’a vu, plusieurs choix sont possibles pour approcher une dérivée première. C’est un des écueils des méthodes de différences finies qu’elles ne donnent pas de façon naturelle une bonne approximation des conditions de Neumann. Ici, on peut remplacer au point b la dérivée u0 (b) soit par uN +1 − uN (8.23) u0 (b) ' h formule qui, bien que seulement d’ordre un, est cohérente avec l’approximation centrée pour la dérivée seconde et maintient la symétrie du système matriciel. 68 Mathématiques et méthodes numériques soit par u0 (b) ' uN +1 − uN −1 2h (8.24) formule d’ordre deux, plus précise. On obtient dans le premier cas : 2 −1 1 2 h 0 0 u f + α/h2 1 1 0 f2 u2 0 f u = .. i i . .. . −1 uN fN −2 −1 1 fN + β/h uN −1 0 · · · 2 −1 · · · .. . .. .. . .. . . ··· ··· (8.25) et dans le deuxième cas, avec une approximation centrée, du deuxième ordre, pour la condition de Neumann : 2 −1 1 2 h 0 0 8.5 u f + α/h2 1 1 0 u2 f2 0 fi ... ui = ... −1 uN fN −2 −1 1 uN fN /2 + β/h −1 0 · · · 2 −1 · · · ... ... ... ... ··· ··· (8.26) Remarques finales Les formules proposées ci-dessus ne représentent qu’une petite partie des formules possibles. Ce sont les plus fréquemment utilisées. Il existe un grand nombre de formules à tous les ordres de précision. On réfère le lecteur à la littérature spécialisée et notamment au livre de C. HIRSCH donné dans la bibliographie pour des compléments sur les formules de différences finies. 8.6 Exercice : Calcul d’une poutre en flexion On considère une discrétisation (maillage) régulière d’un segment de longueur L L en n + 1 intervalles égaux de longueur h = et on considère sur ce segment n+1 le problème de poutre encastrée en flexion suivant : Différences finies 69 Poutre encastrée. 4 d dx4 u(x) = f (x) pour 0<x<L (8.27) u(0) = u0 (0) = 0 u(L) = u0 (L) = 0 a) Ecrire le problème discrétisé correspondant en utilisant l’approximation suivante de la dérivée seconde : u00 (xi ) ≈ ui+1 − 2 ui + ui−1 h2 On obtient le système : ui−2 − 4 ui−1 + 6 ui − 4ui+1 + ui+2 = f i h4 avec u0 = u−1 = un+1 = un+2 = 0 pour i = 1, ..n (8.28) Reprendre le problème dans le cas suivant : Plongeoir. 4 d dx4 u(x) = f (x) pour 0<x<L (8.29) 0 u(0) = u (0) = 0 00 u (L) = u000 (L) = 0 b) Résoudre dans les cas suivants : L = 10 L = 10 f =1 N = 8, 16, 32, ... f = x(10 − x) N = 8, 16, 32, ... 70 Mathématiques et méthodes numériques Chapitre 9 Modélisation de quelques problèmes bidimensionnels classiques de la physique 9.1 9.1.1 Quelques exemples de problèmes physiques Membrane élastique f(x,y) G u(x,y) Fig. 9.1 – Membrane élastique On considère une membrane élastique plane Ω fixée sur son pourtour Γ. On suppose la membrane soumise en tout point (x, y) à une densité de forces f s’exerçant perpendiculairement au plan de la membrane. Sous l’action de f chaque point de la membrane subit un petit déplacement. Le déplacement transversal, perpendiculaire au plan de Ω est l’inconnue u de ce problème et vérifie l’équation : ( −∆ u (x, y) = f (x, y) u |Γ (x, y) = 0 ∀ x, y ∈ Ω (9.1) 72 9.1.2 Mathématiques et méthodes numériques Conduction thermique ' Γd $ Ω & % Γn Fig. 9.2 – Figure 2. On considère une plaque plane Ω de frontière Γ dont une partie Γd est à température connue Td et une partie Γn est isolée thermiquement. La température T à l’équilibre vérifie l’équation −σ ∆ T (x, y) = f (x, y) T | Γd (x, y) = Td (x, y) ∂T (x, y) = 0 ∂n | Γn 9.1.3 ∀ x, y ∈ Ω (9.2) Mécanique des fluides parfaits Soit Ω le domaine interne d’une tuyère, on considère l’écoulement d’un fluide parfait, incompressible non-visqueux, à l’intérieur de cette tuyère. L’écoulement étant incompressible, il est à divergence nulle et donc le vecteur vitesse u du fluide peut s’écrire comme le rotationnel d’une fonction ψ dite fonction de courant. On a: ∂ψ ∂ψ u = rot ψ = ( ,− ) (9.3) ∂y ∂x Γ1 Γe Γs Ω Γ0 Figure 3. Les lignes iso-ψ sont les lignes de courant du fluide. La fonction de courant ψ vérifie également une équation de Poisson, qui s’écrit dans le cas d’un écoulement Modélisation de problèmes physiques 73 irrotationnel (cas d’un profil de vitesse constant en entrée ) : − ∆ ψ (x, y) ψ | Γ0 (x, y) ψ | Γ1 (x, y) ψ | Γe (x, y) ∂ψ (x, y) ∂n | Γs = 0 ∀ x, y ∈ Ω = 0 = 1 (9.4) = ψe (x, y) = 0 En définitive tous les problèmes précédents appartiennent à la famille des problèmes elliptiques suivants − ∆ u (x, y) = f (x, y) u | Γd = ud ∂u = g ∂n | Γn ∀ x, y ∈ Ω (9.5) On peut également rencontrer, dans le cas de matériaux non uniformes l’opérateur div(σgradu) au lieu du laplacien ∆u dans des problèmes du type de (3.5). 9.2 Approximation par différences finies Comme en dimension un, la première étape consiste à discrétiser le domaine. C’est dans l’application aux problèmes bidimensionnels et tridimensionnels que la méthode des différences finies présente sa plus sévère limitation. En effet elle n’est bien adaptée qu’à la discrétisation de domaines rectangulaires ou parallélépipèdiques par des maillages formées de grilles perpendiculaires. Les dérivées partielles dans chaque direction d’axe étant approchées comme les dérivées en dimension un. i,j+1,k i,j,k+1 i,j+1 i-1,j i,j i+1,j ¡ ¡ ¡i,j,k i-1,j,k ¡ i+1,j,k i,j,k-1 i,j-1,k i,j-1 Figure 2.2 : Grilles différences finies bidimensionnelles et tridimensionnelles. 74 Mathématiques et méthodes numériques 9.2.1 Discrétisation géométrique Dans le cas de domaines rectangulaires (ou parallélépipédiques en dimension 3) de côtés parallèles aux axes, on construit une grille de discrétisation en différences finies par quadrillage selon les deux (trois ) directions d’axes. On notera ∆x le pas de discrétisation selon x et de même ∆y et ∆z les pas de discrétisation en y et z. On obtient ainsi aux intersections des lignes du quadrillage les noeuds de coordonnées (xi , yj , zk ) du maillage en différences finies. Cette technique de maillage est généralisable aux assemblages de rectangles (ou de parallélépipédes) ainsi qu’aux domaines se ramenant par bijection régulière à un rectangle (ou un parallélépipéde). Par contre dans le cas de géométries complexes les discrétisations par éléments finis sont mieux adaptées. 9.2.2 Quelques formules simples d’approximation des dérivées partielles par différences finies Notons, en dimension deux, ui,j l’approximation de la valeur exacte u(xi , yj ) pour le point d’indice i, j de la grille. Pour les dérivées partielles premières : – différences divisées progressives : on a les approximations suivantes : ∂u ui+1,j − ui,j (xi , yj ) ' ∂x ∆x ∂u ui,j+1 − ui,j (xi , yj ) ' ∂y ∆y (9.6) – différences divisées regressives : on considère cette fois les approximations : ∂u ui,j − ui−1,j ∂u ui,j − ui,j−1 (xi , yj ) ' (xi , yj ) ' (9.7) ∂x ∆x ∂y ∆y – différences divisées centrées : on obtient (comme en dimension un) une approximation du second ordre : ui+1/2,j − ui−1/2,j ui,j+1/2 − ui,j−1/2 ∂u ∂u (xi , yj ) ' (xi , yj ) ' (9.8) ∂x ∆x ∂y ∆y On en déduit, par double différentiation, l’approximation centrée d’ordre deux du Laplacien −∆u(xi , yj ) ' −ui+1,j + 2 ui,j − ui−1,j −ui,j+1 + 2 ui,j − ui,j−1 + ∆x2 ∆y 2 (9.9) Et plus généralement l’approximation de div(σgradu) : −div(σgradu)(xi ,yj )'− − σ(xi+1/2 ,yj ) (ui+1,j −ui,j )+σ(xi−1/2 ,yj ) (ui,j −ui−1,j ) ∆x2 σ(xi ,yj+1/2 )(ui,j+1 −ui,j )+σ(xi ,yj−1/2 )(ui,j −ui,j−1 ) ∆y 2 (9.10) Modélisation de problèmes physiques 75 On obtient ainsi le système d’équations linéaires dont la résolution donne les valeurs ui,j de la solution approchée du problème −div(σgradu) = f selon −σ(xi+1/2 ,yj ) ui+1,j +(σ(xi+1/2 ,yj )+σ(xi−1/2 ,yj )) ui,j −σ(xi−1/2 ,yj )ui−1,j ∆x2 −σ(xi ,yj+1/2 ) ui,j+1 +(σ(xi ,yj+1/2 )+σ(xi ,yj−1/2 )) ui,j −σ(xi ,yj−1/2 )ui,j−1 =fi,j ∆y 2 (9.11) On doit y ajouter la prise en compte des conditions aux limites. Pour les conditions de Dirichlet, il suffit de fixer les valeurs de ui,j correspondant aux valeurs données sur la frontière Γd . Pour les conditions de Neumann, on doit discrétiser ∂u =g ∂n | Γn Il y a plusieurs choix possibles pour approcher la dérivée normale en différences finies. Le bon choix, qui conserve la symétrie de la matrice du système linéaire global, et qui s’interprète de manière naturelle en éléments finis, consiste à ∂u remplacer, selon le côté de frontière concerné, la dérivée normale par une ∂n | Γn des quatre expressions ui+1,j − ui,j , ∆x ui,j − ui−1,j , ∆x ui,j+1 − ui,j , ∆y ui,j − ui,j−1 ∆y (9.12) Il est alors nécessaire de numéroter les ui,j pour qu’elles constituent les composantes UI d’un vecteur inconnu U . La numérotation influe sur la structure de la matrice. On utilise des algorithmes de numérotation optimale afin de minimiser le stockage (”profil”) de la matrice. Il ne reste alors plus qu’à résoudre le système linéaire obtenu par des méthodes directes de factorisation (méthodes de Gauss LU ou méthode de Choleski LLT ) ou par de méthodes itératives. 76 Mathématiques et méthodes numériques Chapitre 10 Introduction aux problèmes d’évolution. L’équation de la chaleur instationnaire. 10.1 Position du problème La température u(x, y, t) d’un corps plan de surface Ω, de densité ρ, de chaleur spécifique c et de conductivité thermique k est régie au cours du temps par l’équation : ρc ∂u = div(k gradu) + f ∂t ∀(x, y) ∈ Ω et ∀t ∈ [0, T ] (10.1) où f représente la puissance volumique fournie au corps Ω. Si la conductivité k est constante, l’équation se réduit à : ρc ∂u = k ∆u + f ∂t ∀(x, y) ∈ Ω et ∀t ∈ [0, T ] (10.2) Ce problème du premier ordre en temps est le modèle des problèmes paraboliques. La détermination de la solution nécessite de fixer une condition initiale en temps : valeur de la température u au temps 0. u(x, y, 0) = u0 (x, y) (10.3) On dit que le problème est un problème à valeur initiale ou problème de Cauchy. D’autre part, un certain nombre de conditions aux limites sur la frontière Γ du domaine peuvent être prises en compte pour déterminer complètement la solution. 78 Mathématiques et méthodes numériques – Conditions de type Dirichlet lorsque la température est fixée sur une partie de la frontière – Conditions de type Neumann si le flux thermique est fixé ( nul dans le cas d’un matériau isolé thermiquement) – Conditions de type Fourier dans le cas le plus général,... etc, comme dans le cas stationnaire. Remarque : solution stationnaire. Lorsque la température ne dépend plus du temps (régime permanent ou stationnaire), on retrouve l’équation déjà étudiée : ( − div(k gradu) = f ∀(x, y) ∈ Ω (10.4) + Conditions aux limites sur Γ 10.2 Etude des schémas de différences finies dans le cas monodimensionnel 10.2.1 Introduction Une première méthode pour résoudre numériquement les problèmes d’évolution consiste à discrétiser le problème continu par différences finies. Plaçons nous dans le cas monodimensionnel suivant pour simplifier. On considère une barre de longueur L dont la température est fixée à zéro aux extrémités. L’équation de la température au cours du temps s’écrit : ∂ ∂2 u(x, t) = u(x, t) + f (x, t) ∀x ∈ [0, L] et t ∈ [0, T ] ∂t ∂x2 u(x, 0) = u0 (x) donnée : condition initiale u(0, t) = u(L, t) = 0 : conditions aux limites de Dirichlet homogènes (10.5) On choisit une discrétisation régulière de [0, L] en intervalles de longueur ∆x tels que L = M ∆x et une discrétisation de l’intervalle de temps [0, T ] en pas de temps de longueur ∆t tels que T = N ∆t. Notons xj le point j∆x et tn le temps n∆t. Notons unj la valeur de la solution approchée au point xj et au temps tn . Définition 10.2.1 Un schéma aux différences finies est dit schéma à p pas en temps si les valeurs un+1 des solutions approchées au temps tn+1 sont fonctions des j valeurs aux p instants précédents, soit aux temps tn , tn−1 , ...tn−p+1 . En particulier, un schéma est dit à un pas si les un+1 ne dépendent que des unj . j Les deux principales propriétés d’un schéma numérique sont : Schémas pour l’équation de la chaleur 79 l’ordre du schéma qui mesure la précision ou erreur de troncature mathématique commise en remplaçant les dérivées partielles exactes par leurs approximations sous formes de différences divisées. L’ordre est déterminé par des développements de Taylor obtenus en injectant dans l’écriture du schéma numérique la fonction solution continue exacte du problème différentiel. la stabilité du schéma concerne l’évolution du vecteur des valeurs approchées de la solution aux points xj au cours des temps tn ( et non plus la solution exacte continue) dans le cas concret où ∆t et ∆x ne tendent pas vers zéro, mais ont des valeurs fixées. Numériquement, ce critère est relatif à la propagation et l’amplification des erreurs d’arrondis, la condition minimale de stabilité impose que le vecteur de composantes unj reste borné pour tout n ∈ [0, N ]. Sinon, il n’est même pas calculable. Si l’on désire de plus que la solution approchée reproduise le comportement de la solution exacte au cours du temps, on devra imposer des conditions de stabilité plus sévères. Par exemple, dans le cas de l’équation de la chaleur, on cherche à reproduire sur la solution numérique le comportement dissipatif du problème continu. On choisira donc des schémas tels que la solution approchée soit décroissante au cours du temps. 10.2.2 Le Schéma d’Euler explicite Nous allons préciser les définitions des notions d’ordre et de stabilité en nous appuyant sur l’exemple le plus simple de schéma numérique : le schéma d’Euler explicite (en temps et centré (en espace). Considérons le problème ∂ ∂2 u(x, t) = u(x, t) ∀x ∈ [0, L] et t ∈ [0, T ] ∂t ∂x2 u(x, 0) = u0 (x) donnée : condition initiale u(0, t) = u(L, t) = 0 : conditions aux limites de Dirichlet homogènes (10.6) et choisissons les approximations classiques suivantes des dérivées première et seconde par différences finies u(xj , tn+1 ) − u(xj , tn ) ∂ u(xj , tn ) ≈ ∂t ∆t ( à O(∆t) près) (10.7) ∂2 u(xj+1 , tn ) − 2u(xj , tn ) + u(xj−1 , tn ) u(xj , tn ) ≈ ( à O(∆x2 ) près) (10.8) 2 ∂x ∆x2 Remplaçons les dérivées partielles par leurs approximations en différences finies ci-dessus et la fonction inconnue u par une collection de valeurs discrètes unj 80 Mathématiques et méthodes numériques pour j = 0, ..M et n = 0, ..N . Nous obtenons un premier exemple de schéma d’approximation en différences finies de l’équation de la chaleur : le schéma d’Euler explicite (en temps) et centré (en espace). n+1 uj − unj unj+1 − 2unj + unj−1 = ∆t ∆x2 (10.9) u0j = u0 (xj ) donnée : condition initiale n u0 = unM = 0 ∀n : conditions aux limites de Dirichlet homogènes Ce schéma est un schéma à un pas, car le vecteur des solutions approchées au temps tn+1 ne dépend que des solutions approchées au temps tn . C’est un schéma explicite car il donne une formule explicite de calcul de la solution au temps tn+1 en fonction des valeurs de la solution au temps précédent. Il n’y a pas d’équation à résoudre pour obtenir la valeur au nouvel instant tn+1 . 10.2.3 Ordre Notons S∆x,∆t u(xj , tn ) l’application d’un schéma aux différences finies à la solution continue u. Par exemple pour le schéma d’Euler explicite centré : S∆x,∆t u(xj , tn ) = u(xj , tn+1 ) − u(xj , tn ) u(xj+1 , tn ) − 2u(xj , tn ) + u(xj−1 , tn ) − ∆t ∆x2 (10.10) Définition 10.2.2 Un schéma aux différences finies est d’ordre p en temps et d’ordre q en espace si la différence entre l’équation et le schéma appliqué à la fonction solution du problème continu est un infiniment petit d’ordre p en temps et d’ordre q en espace. C’est à dire si l’on a : ¯ ∂ ¯ ∂2 ¯ ¯ u(xj , tn ) − S∆x,∆t u(xj , tn ) ] ¯ = O(∆tp ) + O(∆xq ) (10.11) ¯ u(xj , tn ) − 2 ∂t ∂x Un schéma consistant est un schéma tel que l’expression ci-dessus tende vers zéro avec ∆t et ∆x. Application : le schéma d’Euler explicite est d’ordre un en temps et d’ordre deux en espace. On montrera en exercice que l’on obtient en effet pour ce schéma ∂2 u(xj , tn+1 ) − u(xj , tn ) ∂ u(xj , tn ) − u(xj , tn ) − [ − 2 ∂t ∂x ∆t u(xj+1 , tn ) − 2u(xj , tn ) + u(xj−1 , tn ) ∆t ∂ 2 ∆x2 ∂ 4 ] = − u(x , θ) + u(ξ, tn ) j ∆x2 2 ∂t2 12 ∂x4 (10.12) Schémas pour l’équation de la chaleur 81 Remarque : Au point xj , tn en dérivant l’équation on a : ∂2 ∂4 u(x , t ) = u(xj , tn ) j n ∂t2 ∂x4 (10.13) on pourrait optimiser l’ordre par un choix de pas de temps et d’espace tel que ∆t ∆x2 = 2 12 (10.14) On obtiendrait alors l’ordre 2 en temps et l’ordre 4 en espace. Malheureusement ceci n’est possible que pour des maillages réguliers à pas constants et n’est pas généralisable au cas des éléments finis. 10.2.4 Stabilité Dans le cas de schémas à un pas appliqués à des problèmes linéaires, le vecteur des solutions approchées au temps tn+1 est lié au vecteur des solutions approchées au temps tn par une relation matricielle. Considérons le problème modèle ∂ ∂2 u(x, t) = u(x, t) ∂t ∂x2 (10.15) et appliquons un schéma numérique à un pas. Nous pouvons exprimer le vecteur U n+1 des valeurs de la solution au temps tn+1 en fonction du vecteur U n des solutions au temps tn par : U n+1 = C(∆t, ∆x) U n (10.16) où C est une matrice caractérisant le schéma et dépendant des pas de temps et d’espace. On en déduit : U n = Cn U 0 (10.17) où U 0 est le vecteur des conditions initiales. La condition minimale de stabilité s’exprime par le fait que kU n k reste borné quel que soit n. Une condition plus forte impose la décroissance de kU n k quand n augmente. Condition de stabilité. Le schéma est stable s’il existe τ > 0 tel que kC n k soit uniformément borné pour tout n et tout ∆t vérifiant les conditions : 0 < ∆t < τ et 0 ≤ n∆t ≤ T (10.18) 82 Mathématiques et méthodes numériques Ce critère minimal de stabilité entraı̂ne simplement que la suite U n ne soit pas explosive. Il est satisfait si l’on a la majoration kCk ≤ 1 + c ∆t (10.19) En effet dans ce cas : kCk ≤ 1 + c ∆t =⇒ kU n k ≤ (1 + c∆t)n kU 0 k ≤ ecn∆t kU 0 k ≤ ecT kU 0 k (10.20) U n reste borné pour tout n = 0, ..N . Mais la constante de majoration est exponentielle en la durée d’intégration en temps T et donc devient très grande avec T . On peut en conséquence préférer des conditions de stabilité plus restrictives telles que : kCk ≤ 1 (10.21) En effet on a alors kU n k ≤ kU 0 k ∀n = 0, ..N (10.22) Si l’on veut de plus que la solution numérique reproduise le comportement décroissant de la solution exacte on imposera l’inégalité stricte kCk ≤ α < 1 (10.23) qui entraı̂ne la décroissance de la norme de U n . 10.2.5 Etude matricielle de la stabilité Supposons que le schéma s’exprime sous la forme matricielle présentée plus haut, on déduira la stabilité de majorations de la norme de la matrice C souvent obtenues par le calcul de ses valeurs propres. Exemple : le schéma d’Euler explicite Reprenons le problème ∂2 ∂ u(x, t) = u(x, t) ∀x ∈ [0, L] et t ∈ [0, T ] ∂t ∂x2 u(x, 0) = u0 (x) condition initiale donnée u(0, t) = u(L, t) = 0 : conditions de Dirichlet homogènes (10.24) Schémas pour l’équation de la chaleur 83 et appliquons le schéma d’Euler n+1 uj − unj unj+1 − 2unj + unj−1 = ∆t ∆x2 u0j = u0 (xj ) donnée : condition initiale n u0 = unM = 0 ∀n : conditions aux limites de Dirichlet homogènes (10.25) On obtient aisément l’écriture matricielle : U n+1 = [ I − ∆t A ] Un ∆x2 (10.26) où A est la matrice tridiagonale symétrique déjà rencontrée lors de la discrétisation de la dérivée seconde. 2 −1 0 · · · 0 −1 2 −1 · · · 0 ... ... ... A= (10.27) . . . .. .. . . −1 0 0 · · · · · · −1 2 On peut calculer en exercice les valeurs propres et les vecteurs propres de A. On obtient pour les valeurs propres de A : λk = 4 sin2 kπ 2M pour k = 1, ...M − 1 (10.28) où M dénote le nombre d’intervalles de discrétisation de [0, L] et donc où la dimension de A est égale à M − 1. ∆t La matrice C = I − A est une matrice symétrique réelle. Ses vecteurs ∆x2 propres sont ceux de A , ses valeurs propres sont égales à : µk = 1 − ∆t λk ∆x2 (10.29) ∆t Ak2 kU n k2 ∆x2 (10.30) Majorons la norme euclidienne de U n+1 kU n+1 k2 ≤ k I − ∆t Comme la matrice C = I − A est une matrice symétrique, sa norme ∆x2 euclidienne est égale à son rayon spectral kI − ∆t ∆t ∆t 2 kπ Ak = ρ( I − A) = max | 1 − 4 sin ( )| 2 k=1,..M −1 ∆x2 ∆x2 ∆x2 2M (10.31) 84 Mathématiques et méthodes numériques La condition de stabilité kCk ≤ 1 se traduit donc par : max k=1,..M −1 |1 − 4 ∆t kπ ∆t (M − 1)π ) | ≤ 1 soit 4 2 sin2 ( ) ≤ 2 (10.32) sin2 ( 2 ∆x 2M ∆x 2M Ceci sera assuré dès que l’on aura la majoration ∆t 1 ≤ 2 ∆x 2 (10.33) Cette condition est la condition classique de stabilité du schéma d’Euler explicite pour l’équation de la chaleur. Elle impose des pas de temps très petits, ce qui condamne pratiquement l’usage de ce schéma explicite pour les problèmes paraboliques. 10.2.6 Autres exemples de schémas à un pas Schéma d’Euler implicite On considère, pour la discrétisation du même problème, le schéma implicite suivant : n+1 n+1 u − unj un+1 + un+1 j+1 − 2uj j−1 j = ∆t ∆x2 (10.34) u0j = u0 (xj ) donnée : condition initiale n u0 = unM = 0 ∀n : conditions aux limites de Dirichlet homogènes Ce schéma est dit implicite car le calcul de la solution au pas de temps n + 1 nécessite la résolution d’un système matriciel. Ordre du schéma Un développement de Taylor permet de vérifier simplement que ce schéma est d’ordre un en temps et d’ordre deux en espace comme le schéma explicite (exercice). Stabilité du schéma La même analyse matricielle conduit au résultat suivant : [I + ∆t A ] U n+1 = U n 2 ∆x (10.35) La matrice d’itération C est cette fois égale à : C = (I + ∆t A)−1 ∆x2 (10.36) Schémas pour l’équation de la chaleur 85 Ses valeurs propres sont : 1 (10.37) ∆t 1+ λk ∆x2 Elles sont donc strictement positives et strictement inférieures à 1 pour tout k. Ce qui entraı̂ne la stabilité inconditionnelle ( quels que soient ∆t et ∆x ) du schéma implicite µk = Observons que l’on a, avec ce schéma décroissance de la solution approchée au cours des pas de temps. kU n+1 k2 ≤ 1 kU n k2 ∆t 1+ λ1 ∆x2 avec λ1 = 4 sin2 ( π ) 2M (10.38) Schéma de Crank Nicolson ou schéma des trapèzes On considère, pour la discrétisation du même problème, le schéma implicite suivant : n+1 n+1 uj − unj un+1 + un+1 1 £ unj+1 − 2unj + unj−1 j+1 − 2uj j−1 ¤ = + 2 2 ∆t 2 ∆x ∆x (10.39) 0 uj = u0 (xj ) donnée : condition initiale n u0 = unI = 0 ∀n : conditions aux limites de Dirichlet homogènes Ce schéma est dit implicite car le calcul de la solution au pas de temps n + 1 nécessite la résolution d’un système matriciel. Il correspond à une intégration en temps approchée selon la formule des trapèzes sur les instants tn et tn+1 . Ordre du schéma Ce schéma est d’ordre deux en temps et en espace (exercice). Stabilité du schéma Le même type d’analyse matricielle que précédemment conduit au résultat suivant : ∆t ∆t A ] U n+1 = [ I − A ]U n (10.40) [I + 2 2 2∆x 2∆x La matrice d’itération C est cette fois égale à : C = (I + ∆t ∆t A)−1 ( I − A) 2 2∆x 2∆x2 (10.41) 86 Mathématiques et méthodes numériques Ses valeurs propres sont : ∆t λ 2 k 2∆x µk = (10.42) ∆t λ 1+ k 2∆x2 Elles sont donc de module inférieur à 1 pour tout k ( exercice) . Ce qui entraı̂ne la stabilité inconditionnelle ( quels que soient ∆t et ∆x ) du schéma de Crank Nicolson. 1− La méthode précédente se complique dans le cas de schémas à plusieurs pas, nous allons présenter ci-dessous une technique de calcul plus simple et adaptable au cas de schémas multipas. 10.2.7 Étude de la stabilité par l’analyse de Fourier Une technique simple de calcul de la stabilité d’un schéma est donnée dans le cas de problèmes linéaires par l’analyse de Fourier. Rappelons l’analyse présentée au paragraphe 4.3.1. Nous avions exprimé la solution u de l’équation de la chaleur ∂ ∂2 u(x, t) = u(x, t) ∀x ∈ [0, L] et t ∈ [0, T ] ∂t ∂x2 u(x, 0) = u0 (x) donnée : condition initiale u(0, t) = u(L, t) = 0 : conditions aux limites de Dirichlet homogènes sous la forme du développement : u(x, t) = X ũk (t)sin( k kπ x) L En utilisant de nouveau la linéarité du problème et le principe de superposition, nous observons que la solution, dans le cas de conditions aux limites linéaires quelconques, Dirichlet, Neumann, Fourier ou périodiques s’écrit sous la forme générale : X u(x, t) = ũk (t)eikx k∈Z où k est un coefficient réel intégrant le nombre d’onde, le type de conditions aux limites et la dimension du domaine. Les coefficients de Fourier ũk vérifient chacun une équation différentielle en temps dont la solution s’écrit : ũk (t) = ũk (0) exp(−k 2 t) On a donc ũk (t + ∆t) = exp(−k 2 ∆t) ũk (t) Schémas pour l’équation de la chaleur 87 Faisons la même analyse dans le cas discret. Injectons dans le schéma numérique une suite de solutions de la forme unj = ũnk eikj∆x Ces solutions ont pour conditions initiales u0j = ũ0k eikj∆x et correspondent chacune à une composante harmonique. L’étude de la stabilité se ramène à l’étude de l’évolution au cours des pas de temps n des suites ũnk quand n augmente. La condition minimale de stabilité numérique nécessite que les nombres ũnk restent bornés ∀ k et ∀ n = 0, ...N . Si l’on veut de plus décroissance de la solution approchée, on devra avoir décroissance des ũnk quand n augmente. Dans les schémas à p pas, on obtient les ũn+1 par multiplication par une matrice k d’amplification G(∆t, k) selon : ũn+1 k ũnk : : n−p+2 ũk = G(∆t, k) ũnk ũkn−1 : : n−p+1 ũk Dans les schémas à un pas, la matrice d’amplification se réduit à un facteur d’amplification G(∆t, k) tel que ũn+1 = Gk (∆t) ũnk . k Nous obtenons alors les conditions de stabilité suivantes : Condition nécessaire de stabilité de Von Neumann Pour que le schéma soit stable, il faut qu’il existe τ > 0 tel que les valeurs propres λi de la matrice d’amplification G(∆t, k) soient toutes majorées en module selon : |λi | ≤ 1 + c∆t ∀i = 1, ..p avec c > 0, quel que soit k et pour tout 0 < ∆t < τ Dans le cas de schéma à un pas la matrice d’amplification se réduit à un facteur scalaire et la condition de Von Neuman est suffisante. 88 Mathématiques et méthodes numériques Conditions suffisantes de stabilité 1) Si la matrice d’amplification est normale, c’est à dire qu’elle commute avec son adjointe (ou transposée dans le cas réel) G G∗ = G∗ G ou bien, ce qui est équivalent, si elle admet une base de vecteurs propres orthonormés, alors la condition de Von Neumann est suffisante. 2) La condition précédente étant parfois difficile à vérifier, on peut utiliser la condition suffisante suivante : le schéma est stable si les coefficients de la matrice G(∆t, k) sont bornés et si ses valeurs propres sont toutes de module strictement inférieur à 1 sauf éventuellement une de module égal à 1. Un premier exemple simple d’application : le schéma d’Euler Posons unj = ũnk eikj∆x et calculons le facteur d’amplification Gk (∆t) tel que ũn+1 = Gk (∆t) ũnk . On k obtient : ũn+1 − ũnk exp(ik∆x) − 2 + exp(−ik∆x) k exp(ikj∆x) = exp(ikj∆x) ũnk 2 ∆t ∆x soit : ũn+1 = [1 + k ∆t ∆t k (2 cos(k∆x) − 2] ũnk = [ 1 − 4 sin2 ( ∆x) ] ũnk 2 2 ∆x ∆x 2 ∆t 1 La condition |Gk (∆t)| ≤ 1 ∀k nécessite ≤ . On retrouve évidemment des 2 ∆x 2 calculs analogues et le même résultat que par l’analyse matricielle faite plus haut. Un exemple simple de schéma implicite à 2 pas : le schéma de Gear Considérons le schéma suivant pour l’équation de la chaleur monodimensionnelle : 1 ∆t 3 n+1 + un+1 = uj − 2unj + un−1 [ un+1 − 2un+1 j−1 ] j j 2 2 ∆x2 j+1 Posons comme précédemment unj = ũnk eikj∆x Schémas pour l’équation de la chaleur 89 Un calcul simple conduit au résultat suivant à à n+1 ! 2 ! 1 ũk ũnk − a = a ũnk ũn−1 k 1 0 avec a = ∆t k 3 +4 sin2 ( ∆x) 2 2 ∆x 2 Les valeurs propres de la matrice 2 × 2 d’amplification ci-dessus sont racines de λ2 − 2 1 λ+ =0 a 2a 2−a On trouve le discriminant ∆0 = . On obtient si a > 2 deux racines complexes 2a2 r 1 conjuguées de module < 1 et dans le cas a ≤ 2 deux racines réelles dont la 2a plus grande en valeur absolue vaut r 1 2−a + <1 a 2a2 On a donc stabilité inconditionnelle de ce schéma qui se révèle dans la pratique particulièrement adapté dans le cas d’équations “raides”, c’est à dire dans lesquelles on aurait de fortes variations locales des constantes thermiques. 90 Mathématiques et méthodes numériques Chapitre 11 Introduction aux problèmes conservatifs. L’équation de transport 11.1 Position du problème Considérons un champ de vitesses V(x, y, t) donné et une grandeur scalaire u(x, y, t) transportée au cours du temps par le champ V à travers un domaine plan Ω de bord Γ. À chaque instant t, u vérifie l’équation : ∂u + Vgradu = f ∂t ∀(x, y) ∈ Ω et ∀t ∈ [0, T ] (11.1) où f désigne un second membre éventuel représentant des sources ou des puits de la grandeur u. Ce problème du premier ordre en temps est un modèle de problème conservatif. La détermination de la solution nécessite de fixer une condition initiale en temps : la valeur de u au temps 0. u(x, y, 0) = u0 (x, y) On obtient ainsi un problème à valeur initiale ou problème de Cauchy. Les conditions aux limites choisies sur la frontière Γ doivent être cohérentes avec l’équation de transport. On ne peut fixer les valeurs de u que sur les parties de Γ sur lesquelles le champ de vitesse est entrant. Par contre il convient de laisser libres les valeurs de u en sortie. 11.2 Étude des schémas de différences finies dans le cas monodimensionnel Plaçons nous dans le cas monodimensionnel d’un tube de longueur L et dans le cas d’un transport pur (f = 0) pour simplifier. On choisit une discrétisation 92 Mathématiques et méthodes numériques régulière de [0, L] en intervalles de longueur ∆x tels que L = M ∆x et une discrétisation de l’intervalle de temps [0, T ] en pas de temps de longueur ∆t tels que T = N ∆t. Notons xj le point j∆x et tn le temps n∆t. Notons unj la valeur de la solution approchée au point xj et au temps tn . Considérons le problème ∂ ∂ ∂t u(x, t) + c ∂x u(x, t) ∀x ∈ [0, L] et t ∈ [0, T ] u(x, 0) = u0 (x) données : condition initiale u(0, t) = a 11.2.1 (11.2) Un premier schéma explicite centré instable On considère le schéma discret évident suivant : un+1 − unj unj+1 − unj−1 j +c =0 ∆t 2∆x (11.3) Ce schéma est clairement (exercice) d’ordre un en temps et deux en espace. Etudions la stabilité. Posons unj = ũnk eikj∆x (11.4) nous obtenons : ũn+1 − ũnk + c k ∆t i sin(k∆x)ũnk = 0 ∆x (11.5) Soit ũn+1 = (1 − iα) ũnk k (11.6) avec ∆t sin(k∆x) (11.7) ∆x Les coefficients d’amplification Gk sont donc de module > 1. On en déduit l’instabilité de ce schéma quel que soit ∆t. Ce résultat négatif a fait couler beaucoup d’encre et a suscité de nombreuses recherches de schémas stables par modifications simples de ce schéma naturel. α=c 11.2.2 Schémas implicites centrés stables On obtient évidemment des schémas stables en prenant des schémas implicites en temps. Par exemple on peut considérer le schéma de type Euler implicite suivant : n+1 un+1 − unj un+1 j j+1 − uj−1 +c =0 ∆t 2∆x (11.8) Schémas pour l’équation de transport 93 On montrera en exercice que ce schéma d’ordre un en temps et deux en espace. est inconditionnellement stable. On peut également considérer le schéma de type Crank Nicolson suivant : n+1 un+1 − unj un+1 c £ unj+1 − unj−1 j j+1 − uj−1 ¤ + + =0 ∆t 2 2∆x 2∆x (11.9) Schéma d’ordre deux en temps et en espace inconditionnellement stable et conservatif (les coefficients d’amplification sont des complexes de module un). 11.2.3 Schémas explicites stables Schéma de Lax On remplace au premier membre des équations du schéma explicite centré instable unj+1 + unj−1 unj par . Ceci peut s’interpréter comme un lissage en x ou comme 2 unj+1 − 2unj + unj−1 ∆x2 ∂ 2 u approximant . l’ajout d’un terme dissipatif 2∆t 2∆t ∂x2 On obtient alors le schéma de Lax suivant : un +un j−1 un+1 − j+1 2 j ∆t unj+1 − unj−1 +c =0 2∆x (11.10) On montrera en exercice que ce schéma est d’ordre un en temps et stable sous la condition de Courant Friedrichs Lewy dite condition CFL c∆t ≤1 ∆x (11.11) Schéma de Lax-Wendroff On ajoute au schéma explicite instable un terme dissipatif en O(∆t) corresponc2 ∆t ∂ 2 dant à une discrétisation de . Une interprétation classique de cette mo2 ∂x2 dification consiste à remarquer que le développement de Taylor u(xj , tn+1 ) = u(xj , tn ) + ∆t ∂u ∆t2 ∂ 2 u + + O(∆t3 ) ∂t 2 ∂t2 (11.12) devient en utilisant l’équation ∂u ∂u +c =0 ∂t ∂x (11.13) 94 Mathématiques et méthodes numériques u(xj , tn+1 ) = u(xj , tn ) + ∆t ∂u c2 ∆t2 ∂ 2 u + + O(∆t3 ) ∂t 2 ∂x2 (11.14) c2 ∆t unj+1 − 2unj + unj−1 L’ajout des termes donnera le second ordre en temps au 2 ∆x2 schéma et assurera sa stabilité. On obtient le schéma de Lax-Wendroff suivant : un+1 − unj unj+1 − unj−1 c2 ∆t unj+1 − 2unj + unj−1 j +c − =0 ∆t 2∆x 2 ∆x2 On calculera en exercice le coefficient d’amplification Gk de ce schéma. (11.15) Chapitre 12 Introduction aux problèmes hyperboliques. L’équation des ondes 12.1 Position du problème Considérons une membrane élastique de surface Ω, plane au repos et fixée sur son bord Γ. Lors de petites vibrations transversales, le déplacement normal au plan d’équilibre en tout point x, y de Ω et à chaque instant t est une fonction u : x, y, t −→ u(x, y, t) qui vérifie l’équation : ∂ 2u = c2 ∆u + f 2 ∂t ∀(x, y) ∈ Ω et ∀t ∈ [0, T ] (12.1) où c désigne la vitesse des ondes. Ce problème du second ordre en temps est un modèle de problème hyperbolique. La détermination de la solution nécessite de fixer deux conditions initiales en temps : valeur du déplacement transversal u et de sa dérivée partielle en temps, au temps 0. u(x, y, 0) = u0 (x, y) ∂ u(x, y, 0) = u1 (x, y) ∂t (12.2) On obtient ainsi un problème à valeur initiale ou problème de Cauchy. Les conditions aux limites choisies sur la frontière Γ sont des conditions de Dirichlet homogènes mais on pourrait choisir d’autres types de conditions aux limites comme dans les cas stationnaires ou paraboliques. Remarque : solution stationnaire. Lorsque la solution ne dépend plus du temps (régime permanent ou stationnaire) 96 Mathématiques et méthodes numériques on retrouve une équation déjà étudiée de forme : ( − ∆u = f ∀(x, y) ∈ Ω + Conditions aux limites sur Γ (12.3) 12.2 Étude des schémas de différences finies dans le cas monodimensionnel 12.2.1 Première approche : discrétisation directe de l’équation du second ordre Une première méthode pour résoudre numériquement ce problème d’évolution consiste à discrétiser l’équation du second ordre par différences finies. Plaçons nous dans le cas monodimensionnel d’une corde de longueur L pour simplifier. On choisit une discrétisation régulière de [0, L] en intervalles de longueur ∆x tels que L = M ∆x et une discrétisation de l’intervalle de temps [0, T ] en pas de temps de longueur ∆t tels que T = N ∆t. Notons xj le point j∆x et tn le temps n∆t. Notons unj la valeur de la solution approchée au point xj et au temps tn . Considérons le problème ∂2 ∂2 2 u(x, t) = c2 2 u(x, t) ∀x ∈ [0, L] et t ∈ [0, T ] ∂x ∂t ∂ 0 u(x, 0) = u1 (x) données : condition initiale u(x, 0) = u (x) et ∂t u(0, t) = u(L, t) = 0 : conditions aux limites de Dirichlet homogènes (12.4) et choisissons les approximations classiques suivantes des dérivées secondes par différences finies u(xj , tn+1 ) − 2u(xj , tn ) + u(xj , tn−1 ) ∂2 u(xj , tn ) ≈ 2 ∂t ∆t2 ( à O(∆t2 ) près) ∂2 u(xj+1 , tn ) − 2u(xj , tn ) + u(xj−1 , tn ) u(xj , tn ) ≈ 2 ∂x ∆x2 ( à O(∆x2 ) près) (12.6) (12.5) Remplaçons les dérivées partielles par leurs approximations en différences finies ci-dessus et la fonction inconnue u par une collection de valeurs discrètes unj pour j = 0, ..M et n = 0, ..N . Nous obtenons un premier exemple de schéma d’approximation en différences finies de l’équation des ondes : Schémas pour l’équation des ondes 12.2.2 97 Le schéma différences finies explicite (en temps ) et centré ( en espace) n+1 uj − 2unj + un−1 un − 2unj + unj−1 j 2 j+1 = c ∆t2 ∆x2 u0j = u0 (xj ) et u1j = u0 (xj ) + ∆t u1 (xj ) déduits des conditions initiales n u0 = unM = 0 ∀n : conditions aux limites de Dirichlet homogènes (12.7) Ce schéma est un schéma explicite car il donne une formule explicite de calcul de la solution au temps tn+1 en fonction des valeurs de la solution au temps précédent. Il n’y a pas d’équation à résoudre pour obtenir la valeur au nouvel instant tn+1 . Ordre Ce schéma explicite est d’ordre deux en temps et en espace (exercice). Stabilité Dans le cas de schémas numériques appliqués à des problèmes hyperboliques nous choisirons, comme condition de stabilité, d’imposer au vecteur des solutions approchées d’être conservé ou de décroı̂tre en norme au cours du temps. 12.2.3 Etude de la stabilité par l’analyse de Fourier. Reprenons la technique de calcul de la stabilité des schémas par l’analyse de Fourier. Injectons dans le schéma numérique une suite de solutions de la forme unj = ũnk eikj∆x (12.8) obtenues à partir de conditions initiales u0j = ũ0k eikj∆x (12.9) et correspondant chacune à une composante harmonique. L’étude de la stabilité se ramène à l’étude de l’évolution au cours des pas de temps n des suites ũnk quand n augmente. La condition minimale de stabilité numérique nécessite que 98 Mathématiques et méthodes numériques les nombres ũnk restent bornés ∀ k et ∀ n = 0, ...N . Nous imposerons ici que les nombres ũnk soient conservés ou décroissants en module quand n augmente. Dans les schémas à p pas, on obtient les ũn+1 par multiplication par une matrice k d’amplification G(∆t, k) selon : n+1 ũk ũnk ũnk ũkn−1 = G(∆t, k) : : (12.10) : : n−p+2 n−p+1 ũk ũk Nous choisirons alors les conditions de stabilité suivantes : Condition de stabilité Pour que le schéma soit stable il faut qu’il existe τ > 0 tel que les valeurs propres λi de la matrice d’amplification G(∆t, k) soient toutes majorées en module par 1 selon : |λi | ≤ 1 ∀i = 1, ..p (12.11) quel que soit k et pour tout 0 < ∆t < τ Conditions suffisantes de stabilité 1) Si la matrice d’amplification est normale, c’est à dire qu’elle commute avec son adjointe (ou transposée dans le cas réel) G G∗ = G∗ G ou bien, ce qui est équivalent, si elle admet une base de vecteurs propres orthonormés, alors la condition précédente (14.39) est suffisante. 2) La condition de normalité n’étant pas toujours vérifiée, on peut utiliser la condition suffisante suivante : le schéma est stable si les coefficients de la matrice G(∆t, k) sont bornés et si ses valeurs propres sont toutes de module strictement inférieur à 1 sauf éventuellement une de module égal à 1. Dans certains cas, comme par exemple le cas du schéma aux différences finies explicite, on est obligé, pour conclure, de faire un calcul complet des vecteurs propres et valeurs propres de la matrice d’amplification G(∆t, k). Schémas pour l’équation des ondes 12.2.4 99 Application au schéma aux différences finies explicite Reprenons le schéma explicite : un+1 − 2unj + un−1 un − 2unj + unj−1 j j 2 j+1 =c ∆t2 ∆x2 (12.12) unj = ũnk exp(ikj∆x) (12.13) Posons On obtient : ũn+1 − 2ũnk + ũn−1 exp(ik∆x) − 2 + exp(−ik∆x) n k k = c2 ũk 2 ∆t ∆x2 soit : ¡ ¢ n n−1 ∆t2 ũn+1 = [2 + c2 ∆x 2 2 cos(k∆x) − 2 ] ũk − ũk k 2 n−1 ∆t 2 k n = [ 2 − 4 c2 ∆x 2 sin ( 2 ∆x) ] ũk − ũk (12.14) (12.15) ∆t2 k Notons α2 = 4 c2 sin2 ( ∆x), On obtient l’écriture suivante de la matrice 2 ∆x 2 d’amplification : !à n ! à n+1 ! à 2 − α2 −1 ũk ũk = (12.16) ũnk 1 0 ũkn−1 Cette matrice n’est pas une matrice normale. Les valeurs propres de la matrice 2 × 2 d’amplification ci-dessus sont racines de λ2 − (2 − α2 ) λ + 1 = 0 (12.17) On trouve le discriminant ∆ = α2 (α2 − 4). Si α2 > 4 le discriminant est positif et le trinôme a deux racines réelles distinctes dont le produit vaut 1. L’une des deux est donc forcément de module strictement supérieur à 1 et dans ce cas le schéma est instable. Si α2 < 4 le trinôme a deux racines complexes conjuguées de module 1 et dans ce cas on ne peut conclure directement car la matrice d’amplification n’est pas normale et qu’alors la condition suffisante de stabilité n’autorise qu’une seule valeur propre de module 1. Un calcul simple permet de vérifier que si λ1 et λ2 sont valeurs propres de G, les vecteurs à ! à ! λ2 λ1 et (12.18) 1 1 100 Mathématiques et méthodes numériques sont vecteurs propres de G. On obtient ainsi à !à !à ! λ1 λ2 λ1 0 1 −λ2 1 G= λ1 − λ2 1 1 0 λ2 −1 λ1 D’où Gn = 1 λ1 − λ2 à λ1 λ2 1 !à 1 λn1 0 0 λn2 !à 1 −λ2 −1 λ1 (12.19) ! (12.20) Gn reste donc bornée quel que soit n dans le cas de deux racines complexes conjuguées distinctes, donc à la condition que ∆ soit strictement négatif. Une autre manière de montrer la stabilité dans ce cas consiste à remarquer que si l’on dispose de 2 vecteurs propres indépendants on peut exprimer les vecteurs à n+1 ! ũk (12.21) ũnk dans la base des vecteurs propres. L’action de la matrice d’itération G se ramène dans cette base à la multiplication des composantes des vecteurs par les valeurs propres λ1 et λ2 . Comme ces valeurs propres sont de module 1, le vecteur des itérés est borné en module. Dans le cas ∆ = 0 la racine double est −1. Les deux vecteurs propres à ! à ! λ1 λ2 et 1 1 (12.22) sont alors confondus. Le sous-espace propre relatif à la valeur propre −1 est de dimension un. La matrice G n’est pas diagonalisable, mais seulement jordanisable sous la forme : µ ¶ −1 1 (12.23) 0 −1 Les puissances nièmes de G tendent vers l’infini avec n. Donc dans ce cas limite le schéma est également instable. En définitive la stabilité impose α2 < 4, ce qui s’exprime par la condition : c ∆t <1 ∆x (12.24) dénommée condition de Courant Friedrichs Lewy apparaissant ici au sens strict. Schémas pour l’équation des ondes 12.2.5 101 Un schéma aux différences finies implicite décentré (en temps) et centré (en espace) On considère le schéma implicite suivant directement déduit du schéma explicite précédent : n+1 un+1 − 2un+1 + un+1 uj − 2unj + un−1 j j j−1 2 j+1 =c 2 2 ∆t ∆x 0 0 1 0 uj = u (xj ) et uj = u (xj ) + ∆t u1 (xj ) déduits des condition initiales n u0 = unM = 0 ∀n : conditions aux limites de Dirichlet homogènes (12.25) On montrera à titre d’exercice que ce schéma n’est plus que d’ordre un en temps. Mais il est inconditionnellement stable, c’est à dire stable quel que soit ∆t. Sa matrice d’amplification s’écrit avec les notations précédentes : 2 1 − 1 + α2 (12.26) G(k, ∆t) = 1 + α2 1 0 12.3 Seconde approche : Système du premier ordre équivalent L’équation du second ordre 2 ∂ 2u 2∂ u = c ∂t2 ∂x2 (12.27) se ramène en posant ∂u ∂u et w = c ∂t ∂x au système de deux équations du premier ordre : v= (12.28) ∂v ∂w =c ∂t ∂x (12.29) ∂w ∂v =c ∂t ∂x pour lequel on doit se donner les deux conditions initiales suivantes au temps zéro pour v et w : ∂u (x, 0) = u1 (x) (12.30) v(x, 0) = ∂t et ∂u d w(x, 0) = c (x, 0) = c u0 (x) (12.31) ∂x dx 102 Mathématiques et méthodes numériques ceci peut également s’écrire µ ¶ µ ¶ µ ¶ ∂ ∂ v 0 c v = c 0 ∂x w ∂t w (12.32) On retrouve sous cette forme un système conservatif généralisant, dans le cas d’une inconnue vectorielle, l’équation de transport étudiée au chapitre précédent. On retrouve donc, ici, les mêmes schémas numériques. 12.3.1 Un premier schéma explicite centré instable On considère le schéma discret évident suivant : n+1 n n vj − vjn − wj−1 wj+1 =c ∆t 2∆x n+1 n n n wj − wj = c vj+1 − vj−1 ∆t 2∆x (12.33) Ce schéma est clairement (exercice) d’ordre un en temps et deux en espace. Etudions la stabilité. Posons vjn = ṽkn eikj∆x (12.34) et nous obtenons : Soit wjn = w̃kn eikj∆x (12.35) ∆t i sin(k∆x)w̃kn ṽkn+1 − ṽkn = c ∆x w̃n+1 − w̃n = c ∆t i sin(k∆x)ṽ n k k k ∆x (12.36) à à ! ṽkn+1 w̃kn+1 = 1 ia ia 1 !à ṽkn ! w̃kn (12.37) avec ∆t sin(k∆x) ∆x Les valeurs propres de la matrice d’amplification sont égales à : √ λ = 1 ± ia donc sont de module 1 + a2 > 1 a=c (12.38) (12.39) On en déduit, comme pour l’équation de transport, l’instabilité de ce schéma quel que soit ∆t. Schémas pour l’équation des ondes 12.3.2 103 Schémas implicites centrés stables On obtient évidemment des schémas stables en prenant des schémas implicites en temps. Par exemple on peut considérer le schéma de type Euler implicite suivant : n+1 n+1 n+1 vj − vjn wj+1 − wj−1 =c ∆t 2∆x n+1 n+1 n+1 n wj − wj = c vj+1 − vj−1 ∆t 2∆x (12.40) On montrera en exercice que ce schéma d’ordre un en temps et deux en espace. est inconditionnellement stable. On peut également considérer le schéma de type Crank Nicolson suivant : n+1 n+1 n+1 n n ¤ vj − vjn wj+1 − wj−1 − wj−1 c £ wj+1 = + ∆t 2 2∆x 2∆x n+1 n+1 n+1 n n n ¤ vj+1 − vj−1 c £ vj+1 − vj−1 wj − wj = + ∆t 2 2∆x 2∆x (12.41) Schéma d’ordre deux en temps et en espace inconditionnellement stable et conservatif (les valeurs propres de la matrice d’amplification sont deux complexes conjugués de module un). 12.3.3 Schémas explicites stables Schéma de Lax On remplace au premier membre des équations du schéma explicite centré instable n n n n vj+1 + vj−1 wj+1 + wj−1 n n vj par et de même wj par . Ceci peut s’interpréter 2 2 n n vj+1 − 2vjn + vj−1 comme un lissage en x ou comme l’ajout d’un terme dissipatif 2∆t ∆x2 ∂ 2 v approximant et de même pour w. 2∆t ∂x2 On obtient alors le schéma de Lax suivant : v n +v n n n vjn+1 − j+1 2 j−1 − wj−1 wj+1 =c ∆t 2∆x n +w n w n n wjn+1 − j+1 2 j−1 − vj−1 vj+1 =c ∆t 2∆x (12.42) 104 Mathématiques et méthodes numériques On montrera en exercice que ce schéma est d’ordre un en temps et stable sous la condition de Courant Friedrichs Lewy dite condition CFL c∆t ≤1 ∆x (12.43) Schéma de Lax-Wendroff On ajoute au schéma explicite instable un terme dissipatif en O(∆t) corresponc2 ∆t ∂ 2 dant à une discrétisation de . Une interprétation classique de cette mo2 ∂x2 dification consiste à remarquer que le développement de Taylor v(xj , tn+1 ) = v(xj , tn ) + ∆t devient en utilisant l’équation ∂v ∆t2 ∂ 2 v + + O(∆t3 ) ∂t 2 ∂t2 ∂v ∂w =c ∂t ∂x v(xj , tn+1 ) = v(xj , tn ) + ∆t ∂v c2 ∆t2 ∂ 2 w + + O(∆t3 ) ∂t 2 ∂x2 (12.44) (12.45) (12.46) n n n n − 2wjn + wj−1 − 2vjn + vj−1 c2 ∆t wj+1 c2 ∆t vj+1 L’ajout des termes et donnera le 2 ∆x2 2 ∆x2 second ordre en temps au schéma et assurera sa stabilité. On obtient le schéma de Lax-Wendroff suivant : n+1 n n n n vj − vjn wj+1 − wj−1 − 2vjn + vj−1 c2 ∆t vj+1 =c + ∆t 2∆x 2 ∆x2 n+1 n n n n n n 2 wj − wj = c vj+1 − vj−1 + c ∆t wj+1 − 2wj + wj−1 ∆t 2∆x 2 ∆x2 (12.47) On montrera en exercice que la matrice d’amplification de ce schéma s’écrit : c2 ∆t2 c∆t i sin(k∆x) 1 + ∆x2 (cos(k∆x) − 1) ∆x2 Gk = (12.48) 2 c∆t c ∆t i sin(k∆x) 1+ (cos(k∆x) − 1) ∆x ∆x2 et que ce schéma est stable sous la condition CFL c∆t ≤1 ∆x (12.49) Schémas pour l’équation des ondes 105 Schéma de Courant Friedrichs On utilise pour stabiliser le schéma explicite un maillage décalé pour w par rapport au maillage de discrétisation de v et un calcul implicite des w en fonction des v. On écrit : n+1 n n wj+ 1 − w vj − vjn j− 12 2 =c ∆t ∆x (12.50) n+1 n n+1 n+1 wj− 1 − wj− 1 v − v j j−1 2 2 =c ∆t ∆x n+1 Ce schéma est globalement explicite puisque le calcul de vjn+1 et vj−1 est effectué n+1 avant le calcul de wj− 1 . Il est équivalent au schéma explicite du second ordre en 2 posant unj − un−1 j n vj = (12.51) ∆t et unj − unj−1 n wj− 1 = c (12.52) 2 ∆x On obtient exactement la même condition de stabilité CFL stricte. c∆t <1 ∆x (12.53) C’est d’ailleurs à propos de l’étude de ce schéma que Courant Friedrichs et Lewy ont introduit le concept de stabilité. 12.3.4 Interprétation de la condition de Courant-FriedrichsLewy La condition de Courant Friedrichs Lewy souvent mentionnée exprime la compatibilité nécessaire entre domaine de dépendance théorique et domaine de dépendance numérique. Le pas de temps ∆t doit rester inférieur à la valeur limite au delà de laquelle des parties du domaine de dépendance théorique ne seraient pas prises en compte dans le schéma numérique. Autrement dit le domaine de dépendance numérique issu du point xj , tn+1 doit inclure le domaine de dépendance théorique correspondant. Une autre façon de dire la même chose consiste à limiter le pas de temps de telle sorte qu’en un pas de temps ∆t l’onde ne parcourt pas une distance supérieure à un pas d’espace ∆x. 106 Mathématiques et méthodes numériques t instable tn+1 D x ___ Droites caractristiques tn c Dt stable x xi-1 xi+1 xi Dx Dx Fig. 12.1 – Domaine de dépendance et condition de stabilité