CALCUL SCIENTIFIQUE 2 : DIFFÉRENCES FINIES POUR ÉQUATIONS AUX DÉRIVÉES PARTIELLES PIERRE PUISEUX 1. Préliminaires Un théorème. Théorème 1. Le rayon spectral d'un matrice est un minorant de l'ensemble des normes 1.1. matricielles subordonnées : ρ (A) 6 kAk 1.2. EDP : notations et vocabulaire. Cette section introduit des dénitions fonda- mentales sur les équations aux dérivées partielles (EDP). í Équation aux dérivées partielles : équation comprenant au moins une dérivée partielle d'une fonction de plusieurs variables. í í Ordre d'une équation aux dérivées partielles : ordre de la dérivée de plus haut degré 2 ∂u de l'EDP : − ∂∂xu2 = f est d'ordre 2. ∂t EDP linéaire : équation de la forme F (u, ux , uy , uxx , uxy , uyy , . . . , x, y) = 0 F est linéaire par rapport aux variables, sauf éventuellement les deux (x, y). Chacun des termes comporte au plus la fonction elle-même ou une où la fonction dernières de ses dérivées ; les coecients des termes peuvent dépendre des variables indépendantes. Exemples : uxx + 3uxy + uyy + ux =uexy = 0 2 linéaire, à coecients variables : sin(xy)uxx + 3x uxy + uyy + ux =u = 0 2 x non linéaire : uxx + 3uxy + (ux ) =ue =y = 0 EDP linéaire, à coecients constants : EDP EDP 1.2.1. Classication sommaire des EDP linéaires. considérons une EDP linéaire à deux variables, : auxx + 2buxy + cuyy + dux + euy + f u = g on lui associe son polynôme caractéristique en α et β : P (α, β) = aα2 + 2bαβ + cβ 2 + dα + eβ + f Les propriétés de P (α, β) déterminent la nature de l'EDP Selon le discriminant b − ac, le polynôme et l'EDP sont dits : í hyperbolique si b2 − ac > 0 í parabolique si b2 − ac = 0 í elliptique si b2 − ac < 0 Exercice 2. En TP, tracer les polynômes dans les trois cas. Par exemple í a=b=1 í a = 1, b = c = 12 í a = b = 1, c = 2 1 Janvier 2010 Figure 1.1. Résolution d'EDP par diérences nies z = P (x, y) Pierre Puiseux de type hyperbolique, parabolique et elliptique L'équation parabolique modèle est : 1.2.2. ut − ∆u = f . où ut désigne la dérivée partielle par rapport au temps (u est donc une fonction de variable d'espace, et de t, x, variable de temps). Cette équation modélise par exemple la conduction de la chaleur en régime instationnaire. L'équation elliptique modèle est. 1.2.3. − ∆u = f (1.1) où −∆u =∂12 u + ∂22 u , ∂i , désignant la dérivée partielle par rapport à la i-ème variable. Cette équation modélise par exemple le phénomène de conduction de la chaleur stationnaire (c.à.d. en régime permanent). En élasticité, on rencontre également l'équation du bi-laplacien, c.à.d. : − ∆2 u = f (1.2) L'équation (1.1) peut être discrétisée par diérences nies, volumes nis ou éléments nis. Les méthodes des diérences nies sont limitées à des domaines géométriques simples . L'équation (1.2) est le plus souvent discrétisée par éléments nis, pour des raisons de précision. 1.2.4. Équation hyperbolique modèle. interviennent principalement en mécanique des uides (aéronautique, écoulements diphasiques, modélisation de rupture de barrage et d'avalanches). Elles sont souvent obtenues en négligeant les phénomènes de diusion (parce qu'ils sont de faibles importance) dans les équations de conservation de la mécanique. L'exemple le plus classique d'équation hyperbolique linéaire est l'équation de transport (ou d'advection). (1.3) ut − ux = 0, t ∈ R, x ∈ R avec condition initiale : (1.4) u (x, 0) = u0 (x) Université de Pau et des Pays de l'Adour 2 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Dans le cas où la condition initiale u0 Pierre Puiseux est susamment régulière, il est facile de voir que la fonction : u (x, t) = u0 (x + t) (1.5) u0 est solution de (1.3)-(1.4). Si est non régulière (par exemple discontinue, il est possible de montrer que la fonction dénie par (1.5) est solution en un sens que nous qualierons de faible . 1.2.5. Conditions aux limites. délimite un domaine d'étude Une EDP ne sut pas à dénir une solution unique ; on Ω ⊂ Rd et on adjoint des conditions aux limites (C.L.) à l'EDP. í í donnée sur la frontière ∂Ω ∂u Conditions de Neumann : la dérivée normale est donnée = a sur ∂n → − → − ∇u. n , où n est la normale extérieure à ∂Ω. Conditions aux limites Dirichlet : Maillage. u = u0 ∂Ω. Avec ∂u ∂n = Ω ⊂ Rd . Un maillage de Ω est un découpage de Ω en polyêdres (triangles ou en rectangles pour d = 2, tétraêdres, hexaêdres en dimension d = 3) . Les sommets des polyêdres sont les n÷uds du maillage. 1.3. Exemple. í on se Soit un domaine borné Ω = ]0, 1[ × ]0, 1[, donne n ∈ N et h = 1 . L'ensemble des points n+1 Ωh = {(ih, jh) , 1 6 i, j 6 n} dénit un maillage cartésien régulier (plus exactement le maillage est l'ensemble des carrés délimités par les droites d'équations x = ih et y = jh, avec 1 6 i, j 6 n) Figure 1.2. Deux maillages cartésiens : irrégulier et régulier, et un mail- lage triangulaire Université de Pau et des Pays de l'Adour 3 Laboratoire de Mathématiques Appliquées Janvier 2010 í Résolution d'EDP par diérences nies On peut également se donner deux suites de (xi )16i6nx et (yj )16j6ny . [0, 1], Pierre Puiseux nies et strictement croissantes On considère alors le maillage cartésien irrégulier Ωh = {(xi , yj ) 1 6 i 6 nx , 1 6 j 6 ny } Plus exactement le maillage est l'ensemble des rectangles délimités par les droites x = xi et y = yj , avec 1 6 i 6 nx , 1 6 j 6 ny ). Ponctuellement, on peut avoir besoin x0 = y0 = 0 et xnx +1 = yny +1 = 1 une EDP linéaire avec ses CL sur un domaine Ω d'ajouter des points de la frontière en posant, Étant donnée Au = b usuellement on ne sait pas la résoudre analytiquement. Dans ce cours, on se contentera de trouver, par la méthode des diérences nies, une approximation de la solution aux N points du maillage Ωh . Cette approximation, notée Uh est donc un vecteur de R où N est le nombre de points du maillage. Si une des variables est le temps, on la note t ∈ [0, T ] (plutôt que x ou y ), et de la même manière que pour les variables d'espace, on discrétise le temps en considérant une tn ∈ [0, T ], que l'on prendra le plus souvent équirépartis, c'est tn = n.δt où δt > 0 est le pas de temps. conditions, si u : [0, T ] × Ω → R est une fonction, la valeur u (tn , xi , yj ) est suite croissante d'instants à dire de la forme Dans ces uni,j . notée 1.4. Les principales formules de diérences nies. On rappel le théorème de Taylor sous la forme de Young : Théorème 3. soit f une fonction de classe C n+1 au voisinage d'un point x ∈ R Alors pour tout h réel, f (x + h) = (1.6) n X hk k! k=0 f (k) (x) + O hn+1 La formule (1.6) est appelée formule de Taylor d'ordre k (pour f au voisinage de x) (k) Ici f (x) désigne la dérivée k ième de f, et O (hn+1 ) est une quantité qui tend vers 0 n+1 aussi vite que h lorsque h tend vers 0. n+1 reste borné En toute rigueur, on dit que ϕ (h) est un O (h ) si et seulement si hϕ(h) n+1 au voisinage de h = 0. La formule de Taylor donne une approximation de dérivées au point f (x + h) , connaissant f et ses x. Réciproquement, connaissant la fonction approximation des dérivées successives de f f au voisinage de au point x, on peut en déduire une x. Proposition 4. Les formules suivantes donnent des approximations des dérivées de f au point x : (1.7) (1.8) (1.9) (1.10) f (x + h) − f (x) + O (h) h f (x) − f (x − h) + O (h) f 0 (x) = h f (x + h) − f (x − h) f 0 (x) = + O h2 2h f (x + h) − 2f (x) + f (x − h) 2 f 00 (x) = + O h h2 f 0 (x) = Ces formules sont à la base des méthodes de diérences nies utilisées pour résoudre les équations aux dérivées partielles de la physique. Elles se démontrent en écrivant la formule de Taylor à un ordre ad hoc, aux points Université de Pau et des Pays de l'Adour x−h et x + h, et en faisant des combinaisons 4 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Pierre Puiseux linéaires de ces équations. Pour la troisième formule, par exemple, on utilise points x+h et x−h (1.6) aux : h2 00 f (x) + O h3 2 h2 f (x − h) = f (x) − hf 0 (x) + f 00 (x) + O h3 2 f (x + h) = f (x) + hf 0 (x) + (1.11) (1.12) en soustrayant la seconde équation de la première , on obtient 2hf 0 (x) = f (x + h) − f (x − h) + O h3 O(h3 ) h d'où, en remarquant que Exercice 5. Si avec = O (h2 ) , on déduit la formule anoncée. Démontrer les autres formules proposées. ∂f ∂2f Rd → R alors les formules s'appliquent aux dérivées partielles ∂x et ∂xi ∂xj i f :Ω⊂ 1 6 i, j 6 d Exemple 6. Pour d=2 on a : ∂ 2f 1 2 (x, y) = (f (x + h, y) − 2f (x, y) + f (x − h, y)) + O h ∂x2 h2 2 1 ∂ f (x, y) = 2 (f (x, y + h) − 2f (x, y) + f (x, y − h)) + O h2 2 ∂y h on en déduit que ∆f (x, y) = 1 2 (f (x + h, y) − 4f (x, y) + f (x − h, y) + f (x, y + h) + f (x, y − h)) + O h h2 ce qui se traduit plus visuellement en disant que la molécule (stencil) du laplacien de pas h est 1 1 = 2 1 −4 1 h 1 ∆h 1.5. Exemple basique. Dans le cas général, on cherche à résoudre une EDP avec ses conditions aux limites Au = b l'opérateur A prend en compte les conditions aux limites. Par exemple On considère l'EDP (1.13) 00 0 −u + cu u (0) u (1) 1 =f =0 =0 dans f, c ]0, 1[ sont des fonctions données, 1 de longueur h = n+1 c > 0. On découpe le segment [0, 1] en n+1 intervalles Ωh = {ih, 0 6 i 6 n + 1} í í Les conditions aux limites s'écrivent : u0 = un+1 = 0 L'approximation par diérences nies de la dérivée seconde au point 00 ui = ih est 1 2 (u − 2u + u ) + O h i−1 i i+1 h2 1. En réalité c'est une EDP à une seule variable, donc une simple équation diérentielle, mais elle permet de bien comprendre le fonctionnement de la méthode des diérences nies. Université de Pau et des Pays de l'Adour 5 Laboratoire de Mathématiques Appliquées Janvier 2010 í Résolution d'EDP par diérences nies Pour la dérivée première, on prend une approximation en Pierre Puiseux O (h2 ) an de garder la même précision que sur la dérivée seconde u0i = 1 (ui+1 − ui−1 ) + O h2 2h Avec ces trois équations, on peut réécrire (1.13) aux points du maillage : 1 c1 2 (u − (u − 2u + u ) + u ) = f + O h 2 0 1 2 0 0 h2 2h 1 ci (1.14) 1 < i < n : 2 (ui−1 − 2ui + ui+1 ) + (ui+1 − ui−1 ) = fi + O h2 h 2h 1 cn i = n : 2 (un−1 − 2un + un+1 ) + (un+1 − un−1 ) = fn + O h2 h 2h Ce qui peut s'écrire matriciellement Ah Uh = Bh , soit, en extension : c1 2 − h12 + 2h 0 ··· 0 u1 h2 c2 c2 2 1 − h12 − 2h − · · · 0 + 2 2 h h 2h u2 . .. .. .. . . . 0 . . . .. cn−1 1 2 . . − h2 + 2h un−1 . h2 cn 2 un 0 ··· ··· − h12 − 2h h2 i=1 : La résolution de ce système fournit Uh = A−1 h Bh f1 f2 = ... f qui contient les approximations de la u aux points du maillage. kπ λk = =2 + 2 cos n+1 , k = 1, 2, . . . , n; solution 1.6. Consistance, stabilité, convergence. La première question qui se pose concerne la qualité de la solution : est-elle proche de la solution exacte ? 0 (ou ∗ bien n vers l'inni), la solution approchée Uh converge-t-elle vers les valeurs exactes Uh = ∗ (u (ih))16i6n de la solution ? La seconde question concerne la convergence : si l'on fait tendre le pas h vers De manière générale, on considère une EDP avec ses conditions aux limites et initiales : Φ (u) = 0 (1.15) de solution ũ : Ω 7→ R et Ωh , un maillage de Ω, généralement dans ce cours, le domaine est : í Ω = ]0, 1[ × ]0, +∞[ (x, t) ∈ Ω, x est la variable d'espace et t la variable temps. Le maillage est de la forme Ωh = {(j∆x, n∆t) , 1 6 j 6 J , et n > 0}. On a posé h = (∆x, ∆t) í ou bien Ω = ]0, 1[ × ]0, 1[ si le temps n'intervient pas et le maillage est de la forme Ωh = {(i∆x, j∆y) , 1 6 j 6 J , et 1 6 i 6 I}. On a posé h = (∆x, ∆y) En chaque point (j∆x, n∆t) l'équation Φ (u) = 0 est discrétisée par diérences nies sous , où pour tout point une forme Φnj (u) = 0 (1.16) Dénition 7. í Troncature On appelle erreur locale de consistance ou erreur locale de troncature au point (j∆x, n∆t) la valeur : εnj = Φnj (ũ) où í ũ et la solution exacte L'erreur (globale) de troncature est ε (∆x, ∆t) = max εnj , (j∆x, n∆t) ∈ Ωh Université de Pau et des Pays de l'Adour 6 Laboratoire de Mathématiques Appliquées n−1 fn Janvier 2010 í Résolution d'EDP par diérences nies Pierre Puiseux Le schéma est consistant si lim ε (∆x, ∆t) = 0 (∆x,∆t)→(0,0) í Le schéma est consistant d'ordre p en espace, q en temps si ε (∆x, ∆t) = O (∆xp ) + O (∆tq ) Dénition 8. Si les fonctions Φnj sont linéaires, alors la méthode peut s'écrire comme un système linéaire indépendament Dénition 9. Ah Uh = Bh . de h La méthode est stable si et seulement si On appelle restriction à la grille Ωh A−1 h est borné l'application ρh : C 1 (]0, 1[) → Rn u 7→ (u1 , u2 , . . . , un )t et ρh (u) sera généralement noté Uh ou parfois même uh . Théorème 10. Une méthode stable et consistante est convergente. Démonstration. TODO A revoir...L'erreur Eh = Ũh − Uh vérie Ah Eh = Ah Ũh − Ah Uh = Ah Ũh − Bh = Rh Eh = A−1 h Rh donc puis A−1 h kEh k 6 kRh k 2. Différences finies pour les problèmes elliptiques 2.1. En dimension 1. (2.1) 2.1.1. 00 −u = f u (0) = 0 u (1) = 0 sur On reprend la problème modèle du premier chapitre : ]0, 1[ Discrétisation. h = précédent, on pose 1 ,n n+1 > 1, on dénit la discrétisation comme au chapitre u (ih) = ui La discrétisation de (2.1) amène le système linéaire Ah Uh = Bh (2.2) avec Ah = Uh = (ui )16i6n et Bh = (fi )16i6n ème La i composante de l'erreur 1 tridiagn (−1, 2, −1) h2 1 (−vi+1 + 2vi − vi−1 ) − vi00 . Or, h2 on sait que (en utilisant la formule de Taylor-Lagrange) pour tout i, 1 6 i 6 n on a de troncature est ri = h2 ri = v (4) (αi ) + v (4) (βi ) 24 Université de Pau et des Pays de l'Adour 7 Laboratoire de Mathématiques Appliquées Janvier 2010 avec αi constante Résolution d'EDP par diérences nies ](i − 1) h, (i + 1) h[. Par indépendante de h, on peut écrire et βi dans suite, en posant Pierre Puiseux C = 1 12 sup]0,1[ v (4) , Rh = h2 (K1 , K2 , . . . , Kn )t (2.3) |Ki | 6 C, 1 6 i 6 n où . Analyse de convergence en norme euclidienne . k.k2 La norme matricielle subordonnée à la norme euclidienne est la norme spectrale, qui, dans le cas d'une matrice A 2.1.2. symétrique est égal à son rayon spectral ρ (A) = max {|λ| , λ ∈ sp (A)} o n −1 −1 1 La norme euclidienne de Ah est donc ρ Ah = max |λ| , λ ∈ sp (Ah ) = c'est à dire √ 2 π sin h 2 (n + 1) √ π 2 ∼ 2 indépendamment de h ρ ρ A−1 h donc 1 min{|λ|,λ∈sp(Ah )} est bornée A−1 h = L'erreur de troncature est 2 kAh Vh − (Av)h k2 = h sX Ki2 16j6n √ 6 h nC √ 6 h hC 2 La méthode est donc convergente en norme euclidienne. 2.1.3. Analyse de convergence en norme innie k.k∞ . Dans ce cas, l'erreur de troncature est La norme matricielle est kAk∞ kAh Vh − (Av)h k∞ 6 h2 C P = maxi j |aij |. On montre au paragraphe suivant (2.2)que A−1 h 6 1 8 La méthode est donc convergente en norme innie. Monotonie, stabilité en norme k.k∞ . Dénition 11. Soit A = (ai,j ) ∈ Rn,n . 2.2. í í í On dit que On dit que On dit que A A A Proposition 12. ai,j > 0, ∀i, j ∈ {1, . . . , n} −1 est monotone si A est inversible et A >0 n conserve la positivité si ∀v ∈ R , Av > 0 =⇒ v > 0 est positive, et on note A>0 si A est monotone ⇐⇒ A conserve la positivité Démonstration. Si A conserve la positivité, alors. Supposons Ax = 0, alors Ax > 0 donc x > 0. de même Ax 6 0 donc x 6 0 donc x = 0 donc A est inversible. En posant y = Av , −1 ème −1 −1 on a y > 0 =⇒ v = A y > 0. Or la i colonne de A est A ei > 0, où ei > 0 est le ème −1 i vecteur de base. Donc A est positive et A est monotone. −1 Réciproquement si A est monotone, alors les coecients de A sont positifs, donc si −1 y = Ax > 0 alors x = A y > 0, A conserve la monotonie. Proposition 13. La matrice Ah = h1 tridiag (−1, 2, −1) est monotone. 2 Université de Pau et des Pays de l'Adour 8 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Démonstration. indice tel que v ∈ Rn tel que Ah v > 0. vp = min16i6n vi . on a donc Soit On pose v0 = vn+1 = 0. Pierre Puiseux Soit p le plus petit vp−1 > vp vp+1 > vp (2.4) (2.5) On suppose vp < 0. Ah v > 0, Comme on a (vp − vp−1 ) + (vp − vp+1 ) > 0 ce qui est en contradiction avec (2.4) et (2.5) Proposition 14. A−1 h 6 Démonstration. A−1 > 0 h t eh = (1, . . . , 1) 1 8 car donc la méthode est stable en norme k.k∞ Ah bi,j = A−1 h est monotone. De plus, en posant i,j et −1 , la norme de Ah s'écrit : A−1 h ∞ = max X i bi,j = A−1 h eh ∞ j x(1−x) est solution de (2.1) avec e = 1 au second membre. Comme Or on voit que u (x) = 2 (4) u = 0, l'erreur de troncature est nulle, donc uh = ρh (u) = (u (h) , u (2h) , . . . , u (nh))t −1 vérie exactement Ah uh = eh , donc uh = Ah eh et on obtient l'estimation A−1 h ∞ 6 sup |u| ]0,1[ 6 1 8 Inuence de la discrétisation des CL. 2.3. (2.6) 00 −u = f u0 (0) = α u (1) = 0 2.3.1. Consistance. i 0 1 16i6n . . . sur Considérons : ]0, 1[ On discrétise : Ah uh (Au)h Rh 0 (u1 − u0 ) u (0) = α hK0 1 −u” (h) = f1 h2 K1 (−u0 + 2u1 − u2 ) h2 1 (−ui−1 + 2ui − ui+1 ) −u” (ih) = fi h2 Ki h2 1 h . . . . . . n+1 un+1 1 Avec K0 = u” (hθ0 ) , Ki = 2 pour 1 6 i 6 n h2 24 . . . un+1 = 0 0 (4) (4) u ((i − θi ) h) + u ((i + θi0 ) h) et θ0 , θi , θi0 ∈ [0, 1] t Rh = (hK0 , h2 K1 , . . . , h2 Ki , . . . , h2 Kn , 0) ou les 1 h par K = max 12 sup[0,1] u(4) , 12 sup[0,1] |u”| . Ce qui donne une erreur de troncature |Ki | sont bornés indépendament de Pour résoudre le système, on teste plusieurs possibilités : On conserve la variable u0 et on élimine la variable un . Le système s'écrit alors : Ãh Uh = B̃h avec h −h −1 2 −1 1 .. .. . . Ãh = 2 h .. . avec B̃h = (α, f1 , f2 , . . . , fn )t et . ∈ Rn+1,n+1 .. . −1 −1 2 .. Uh = (ui )06i6n . Université de Pau et des Pays de l'Adour 9 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Le problème est que probablement Ã−1 h Pierre Puiseux n'est pas bornée. Donc le shéma n'est pas convergent. 1 , sous la On peut changer la première équation de ce système. en la multipliant par h 1 α forme 2 (u1 − u0 ) = . Dans ce cas, le système s'écrit Ah Uh = B h avec h h Ah 1 −1 −1 2 −1 = −1 2 ∈ Rn+1,n+1 t α , f1 , f2 , . . . , fn et Uh = (ui )06i6n . ce qui revient à écrire la première équation avec B h = h 1 (u1 − u0 ) = αh + hh K0 . Dans ce cas, le conditionnement de la matrice est meilleur, mais h2 l'erreur de troncature devient en K0 c'est à dire que le schéma n'est pas consistant. (L'erreur de troncature ne tend pas vers 0). Le shéma n'est donc toujours pas convergent. Le conditionnement des matrices 2 −1 −1 2 −1 Ah = −1 2 1 −1 −1 2 −1 Ah = et Āh est le suivant : −1 2 h −h −1 2 −1 Ãh = Ah , Ãh −1 2 Université de Pau et des Pays de l'Adour 10 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Pierre Puiseux 4133.6429 16370.242 235490.39 16373.242 65166.524 1319338.8 36718.536 146385.58 3623825.2 65169.524 260027.42 7426799.1 101726.21 406092.04 12961285. 146388.58 584579.44 20432189. 199156.66 795489.62 30024595. 260030.42 1038822.6 41908618. 329009.89 1314578.3 56242555. 406095.04 1622756.8 73175050. On peut montrer, malgré cette inconsistance (ou cette instabilité suivant le cas), que globalement, le shéma reste quand même convergent d'ordre 1, en norme ∞. Une autre possibilité est de discrétiser la condition aux limites de Neuman à l'ordre 2 : h2 u” (0) + O h3 2 2 h = hα + f0 + O h3 2 u (h) − u (0) = hu0 (0) + u1 − u0 1 h2 α + 12 f0 + O (h). Le système linéaire s'écrit dans ce cas : h t f0 , f , f , . . . , f . On a alors la consistance en O (h) et la 1 2 n 2 matrice moins mal conditionnée. (u1 − u0 ) = Ah Uh = B̂h avec B̂h = αh + et nalement TP :. í Résoudre le problème à l'ordre 1 puis 2 00 2 −u = π sin πx u0 (0) = π u (1) = 0 (2.7) í í sur ]0, 1[ u∗ = sin πx 1 1 , assemble la matrice Ah = 2 Tridiagn (−1, 2, −1) Ecrire une fonction qui, pour n donné, h = n+1 h et la matrice Ah du pb ci dessus. Calculer les spectres de Ah et de Ah et tracer sur −1 un même graphique les normes kAh k2 , Ah , A−1 et Ah h 2 2 Comparer avec la solution exacte 2 2.3.2. Stabilité, étude de Ah . On ne connaît pas les valeurs propres de Ah , on sait par ∞ Rh = Bh − Ah Uh l'équation contre, étudier sa norme Posons 2.4. En dimension 2. Assembler matrice et trouver valeurs propres. Numérotation des inconnues Théorème 15. Les valeurs propres de Ah laplacien 2d de stencil sont λpq (p,q) ui,j 1 h2 −1 −1 4 −1 −1 2 pπ 2 qπ sin + sin n+1 n+1 ipπ jqπ = sin sin n+1 n+1 4 = 2 h Mettre en évidence la structure par blocs Université de Pau et des Pays de l'Adour 11 Laboratoire de Mathématiques Appliquées Janvier 2010 2.5. Résolution d'EDP par diérences nies Pierre Puiseux Exercices. Exercice 16. monotone. Soit Il s'agit de montrer que la matrice v ∈ Rn 1 −1 −1 2 −1 Ah = −1 2 est tel que Ah v > 0 (2.8) Considérons le plus petit indice p, 1 6 p 6 n tel que vp = min16i6n vi et supposons que vp < 0 (2.9) (1) Montrer que p=1 (2) On suppose que conduit à une absurdité. p > 1. Établir que vp−1 > vp vp+1 > vp (2.10) (2.11) et déduire de (2.8) une absurdité. (3) En déduire que Exercice. Ah A = tridiagn (−1, 2, −1). ikπ ui = sin n+1 , 1 6 i 6 n. Etude de la matrice le vecteur de coordonnées í est monotone. Montrer que u Soit est un vecteur propre de la matrice A. k xé 16k6n et u ∈ Rn Calculer la valeur propre associée. í En déduire que A est inversible, calculer la norme spectrale de conditionnement de í A celle de A−1 , et le en norme spectrale. Etudier le comportement de ces diérentes quantités lorsque Exercice. A, n → ∞. kAk∞ : Au 6 0 =⇒ u 6 0 (cette inégalité s'entend composante par composante. Considérer un indice i tel que ui = max16j6n uj et supposer ui > 0. En distinguant les cas i = 1,1 < i < n et i = n parvenir à une contradiction.) í En déduire que A est inversible (Au = 0 =⇒ u = 0) í Montrer que (A−1 )ij = bij > 0 (considérer ei = A (A−1 ei ) = Aci > 0 où ei est le ième ème −1 vecteur de base et ci est la i colonne de A . t 1 í Montrer que kA−1 k∞ 6 8 . (Considérer ũ (x) = 21 x (1 − x) etu = (u (h) , u (2h) , . . . , u (nh)) , P P P t −1 montrer que Au = (1, 1, . . . , 1) ≡ U. Comme u = A U = j b1j , j b2j , . . . , j bnj , í Etude de Montrer que on a A−1 ∞ = kuk∞ 6 inf ũ [0,1] = 1 8 3. Différences finies pour les problèmes hyperboliques pas de conditions aux limites (Ω = R), Université de Pau et des Pays de l'Adour condition initiale 12 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Pierre Puiseux Equation de convection, pb modèle. 3.1. ∂u ∂u +c = 0 pour (x, t) ∈ R × R∗+ ∂t ∂x u (x, 0) = u0 (x) donné (3.1) (3.2) Théorème 17. Si u0 est de classe C 1 sur R, alors l'équation unique u (x, t) = u (x − ct) (3.1) 0 admet la solution Démonstration. í í La fonction 0 0 0 0 u (x − ct) vérie bien ut + cux = −c (u ) + c (u ) = 0 et u (x, 0) = u0 (x). L'unicité se démontre en utilisant les droites caractéristiques : on appelle droite x0 ,la caractéristique de (3.1), issue de droite Dx0 du plan (x, t), d'équation x (t) = x0 + ct. Montrons que si u est solution, de (3.1), alors u est constante le long de cette (x, t) ∈ Dx0 ), et ceci pour tout x0 . La fonction ϕ : t 7→ u (x0 + ct, t) droite (i.e. pour vérie : ϕ0 = cux + ut = 0 donc ϕ est constante et vaut ϕ (t) = ϕ (0) c'est à dire : ∀ (x0 , t) ∈ R × R+ , u (x0 + ct, t) = u0 (x0 ) et en posant 3.2. x = x0 + ct, on obtient u (x, t) = u0 (x − ct). Stabilité L2 , analyse de Von-Neumann. En général, pour la stabilité d'un schéma, on utilisera l'analyse de Von Neumann que l'on décrit ci dessous : soit u est une fonction 2π -périodique susament régulière, on peut l'écrire comme une ikx série de Fourier, somme dénombrable d'ondes monochromatiques u (x) = X e û (k) eikx k∈Z avec des coecients de Fourier en nombre inni, dénombrable û (k) = (û (k))k∈Z 1 2π k∈Z : 2π Z u (x) e−ikx dx 0 est une suite double de coecients de Fourier. De manière analogue, si u est intégrable sur R, elle est la somme d'un nombre inni non dénombrable d'ondes monochromatiques Z û (ω) eiωx dω u (x) = R avec les coecients de Fourier cette fois ci en nombre inni, non dénombrable (c'est à dire une fonction û appelée la transformée de Fourier) : û (ω) = 1 2π Z u (x) e−iωx dx R L'application u 7→ û est appelée transformation de Fourier, la fonction transformée de Fourier de On retiendra que û est appelée la u. u est un signal composé de fréquences ω (ou k ), et que û (ω) (ou û (k)) ω (ou la k -ième fréquence) dans représentent l'intensité, ou l'importance de la fréquence la fonction u An d'étudier le comportement d'un schéma comme (3.6), on l'écrit sous la forme (3.3) u(n+1) (x) = u(n) (x) − β (n) u (x + ∆x) − u(n) (x − ∆x) 2 Université de Pau et des Pays de l'Adour 13 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Pierre Puiseux x R= j∆x. Supposant que l'on peut décomposer un , un+1 ,etc. en intégrale de Fourier, un (x) = R uˆn (ω) eiωx dω , on peut se demander, pour une fréquence ω donnée, que devient le coecient de Fourier uˆn (ω) au cours de la marche en temps du schéma ? On démontrera en exercice que la fonction φ : x 7→ u (x + ∆x) a pour transformée de b (ω) = û (ω) eiω∆x Fourier φ avec Lorsque l'on prend la transformée de Fourier de (3.3) (c'est à dire lorsqu'on calcule le ω ), on obtient : β iω∆x −iω∆x d \ (n+1) (n) u (ω) = u (ω) 1 − e −e 2 (n) (ω) (1 − iβ sin ω∆x) = ud coecient de Fourier correspondant à la fréquence La quantité A (ω) = 1 − iβ sin iω∆x est appellée coecient d'amplication du schéma. On a donc (n+1) (ω) u\ ub0 (ω) An+1 (ω) n+1 ub0 (ω) sup |A| = 6 R Lorsque ce coecient est de module plus petit que 1, pour toute valeur de L2 −stable. ω, le shéma est Lorsqu'il existe des fréquences ω pour lesquelles A (ω) > 1, le schéma est L2 −instable. C'est le cas dans l'exemple ci-dessus. 2 On parle de stabilité L car la transformée de Fourier est une isométrie et vérie : u(n) 2 L2 2 (n) ud L2 Z 2 (n) (ω) dω ud = ZR 2 d (0) (ω) dω = |A (ω)|2n u = R 2 d (0) 6 sup |A (ω)|2n u L2 ω∈R On a donc u(n) 3.3. L2 6 kAkn∞ u(0) L2 Amplication, dissipation, dispersion TODO. L'analyse de Von Neumann donne plus de renseignements que l'amplication globale du schéma. Elle renseigne également sur la dissipation et la dispersion. La dissipation caractérise la faculté d'un schéma à dissiper l'énergie d'une onde de fréquence donnée, la dispersion rend compte de l'aptitude de ce même schéma à disperser au quatre vents les diérentes harmoniques de l'onde initiale qui ne se propagent pas toutes à la même vitesse. La solution exacte de l'équation de transport au temps n∆t, s'écrit un (x) = u0 (x − cn∆t) sa transformée de Fourier (en espace) de fréquence ω est uˆn (ω) = uˆ0 (ω) e−iωc∆t n Le nombre ϕ (ω) = ω∆x Université de Pau et des Pays de l'Adour 14 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies est appelé la phase de la fréquence Pierre Puiseux ω dans le schéma. C'est un nombre que connaissent ∆t bien les physiciens. On le fait apparaître dans l'équation compte tenu de β = c : ∆x uˆn (ω) = uˆ0 (ω) e−iβϕ(ω) (3.4) n Lorsque l'on calcule la transformée de Fourier de la solution numérique au temps n∆t, on trouve uˆn (ω) = uˆ0 (ω) An (ω) (3.5) En mettant A (ω) sous la forme A (ω) = |A (ω)| e−iδ(ω)ϕ(ω) −iβϕ(ω) on en vient naturellement à comparer les deux coecients e et δ quotient est l'erreur de dispersion ... TODO, cf quarteroni, page480 β 3.4. Shéma explicite centré. (n+1) uj (3.6) í í on pose Consistance en e−iδ(ω)ϕ(ω) : le ∆t β = c ∆x (n) = uj − β (n) (n) uj+1 − uj−1 2 O (∆t) + O (∆x2 ) 2 Le schéma est inconditionnellement L −instable car : on écrit (3.6) sous la forme β un+1 (x) = un (x) − 2 (un (x + ∆x) − un (x − ∆x)) et on calcule sa transformée de Fourier on obtient : β iω∆x −iω∆x n+1 n d c e −e u (ω) = u (ω) 1 − 2 d'où l'on tire : n+1 (ω) = A (ω) u cn (ω) ud avec le coecient d'amplication 1. Le schéma est β 2 sin2 ω∆x > 1 3.5. 2 inconditionellement stable.|A (ω)| í í í 3.6. 1 1+β 2 sin2 ω∆x 2 6 = |1 − iβ sin iω∆x| = 1 + Shéma implicite décentré amont. n+1 un+1 = unj − β un+1 j j+1 − uj (3.7) í í A (ω) = 1 − iβ sin ω∆x et |A (ω)|2 = Erreur de troncature : localement d'ordre 1 en temps, 1 en espace. 2 Le schéma est inconditionnellement stable L car le coecient d'amplication vaut 2 1 1 = 1 + 2β (1 − cos ω∆x) + 2β 2 (1 − cos ω∆x) > 1 A (ω) = 1+β(eiω∆x et −1) A(ω) ∞ Stabilité l Principe du maximum Variation totale Shéma avec diusion numérique articielle. (3.8) 3.6.1. (n+1) uj (n) = uj − Erreur de troncature β (n) (n) (n) (n) (n) uj+1 − uj−1 + d uj+1 − 2uj + uj−1 2 Voir le schéma de Lax-Wendro Université de Pau et des Pays de l'Adour . 15 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Stabilité L2 : Pierre Puiseux ∆t A (ω) = 1−ic ∆x sin ω∆x−2d (1 − cos ω∆x). Pour c et d xés, A (ω) décrit dans le plan complexe une ellipse paramétrée par ω ∈ [0, 2π]. Les axes de cette ellipse sont vertical et horizontal. Le max de |A (ω)| est atteint pour . Le schéma est stable si et seulement si ω∆x ∈ 0, π2 , π, 3π 2 3.6.2. Le coecient d'amplication est |1 − 4d| 6 1 |1 ± iβ − 2d| 6 1 si la condition CFL est réalisée : ∆x > c ∆t on obtient la condition de stabilité 1 1p 1 >d> − 1 − β2 2 2 2 3.6.3. Stabilité l∞ . On écrit le schéma sous la forme (n+1) uj β β (n) (n) (n) uj−1 + (1 − 2d) uj + d − uj+1 = d+ 2 2 (n) (n) (n) = Auj−1 + Buj + Cuj+1 Les conditions obtenues pour d B > 0. ci-dessus impliquent que Si on suppose de surcroît d > alors A, B et C β , 2 sont positifs si bien que (n+1) uj (n) (n) 6 A uj−1 + B uj (n) + C uj+1 (n) 6 (A + B + C) max uj j ce qui assure la stabilité au sens 3.7. Schéma saute-mouton. (n+1) uj (3.9) í l∞ . (n−1) uj = −β (n) uj+1 − (n) uj−1 consistance : le schéma est d'ordre 2 en temps et 2 en espace car on reconnaît des dérivées centrées en temps et en espace, d'ordre 2 donc : (3.9) ⇐⇒ ⇐⇒ í Stabilité L2 1 (n+1) c (n+1) (n−1) (n−1) u − uj + u − uj =0 2∆t j 2∆x j (n) (n) ∂u ∂u +c + O ∆x2 + O ∆t2 = 0 ∂t j ∂x j : on écrit (3.9) sous la forme suivante : u(n+1) (x) = u(n−1) (x) − β u(n) (x + ∆x) − u(n) (x − ∆x) avec x = j∆x. En prenant la transformée de Fourier : d \ (n+1) (ω) = u (n−1) (ω) − 2iβ u (n) (ω) sin ω∆x u\ Cette égalité couvre deux pas de temps. On peut l'écrire matriciellement : (n+1) (ω) u\ (n) (ω) ud ! = −2iβ sin ω∆x 1 1 0 Université de Pau et des Pays de l'Adour (n) (ω) ud (n−1) (ω) u\ ! 16 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Pierre Puiseux Le coecient d'amplication apparaît comme une matrice d'amplication A (ω) = −2iβ sin ω∆x 1 1 0 det (A (ω) − λI) = λ2 + 2λiβ sin ω∆x n − 1. Sous la p > c, le discriminant est positif et les deux racines λ1 , λ2 ∈ −iβ sin ω∆x ± 1 − β 2 sin dont les valeurs propres sont racines de condition CFL vérient 3.8. ∆x ∆t |λ1 | = |λ2 | = 1. On en déduit que le shéma est stable Partie numérique. on traitera le problème de diusion convection suivant : ∂u ∂u ∂ 2u +c −µ 2 ∂t ∂x ∂x u (x, 0) ∂u (0, t) ∂x ∂u (1, t) ∂x avec (0 L2 = 0, x ∈ [0, 1] , t > 0 = u(0) (x) = 0 = 0 < α < 1) 0 (x−α)2 (1−α−x)2 u(0) (x) = 16 sin 4π x−α 0.25 (0.25)4 0 La mise en ÷uvre se déroule ainsi : 1 on se xe N et on pose ∆x = , on xe ∆t N +1 On discrétise les conditions aux limites à l'ordre 1 : si 06x<α si α6x61−α si 1−α<x61 uN +1 = uN et u0 = u1 . On discrétise le problème de diusuion convection avec un schéma de notre choix. Par exemple le schéma implicite décentré amont (n) (3.10) uj (n) = (n−1) uj µ (n−1) β (n) (n−1) (n) (n−1) + uj+1 , n > 0, 1 6 j 6 N − − 2uj u − uj−1 + u 2 j+1 ∆x2 j−1 (n) uN +1 = uN (n) (n) = u1 u0 Ce qui se met sous forme matricielle : AU (n+1) = BU (n) avec A = et B = 3.9. Exercices. 3.9.1. Shéma Lax-Wendro. (3.11) (n+1) uj í í í β2 β (n) (n) (n) (n) (n) − u − uj−1 + uj+1 − 2uj + uj−1 2 j+1 2 Erreur de troncature locale et globale 2 ∞ Stabilité L ,l sous la condition CFL Variation totale non conservée (voir sur dessin) 3.9.2. (3.12) í í í í = (n) uj Shéma Lax-Friedrichs. (n+1) uj = (n) (n) uj+1 + uj−1 β (n) (n) − uj+1 − uj−1 2 2 2 et globale : noter que vj+1 + vj−1 = 2vj + O (∆x ) Erreur de troncature locale 2 Stabilité L , stabilité l∞ : condition CFL Principe du maximum discret Variation totale décroissante Université de Pau et des Pays de l'Adour 17 Laboratoire de Mathématiques Appliquées Janvier 2010 3.9.3. Résolution d'EDP par diérences nies Schéma de Newmark. Pierre Puiseux voir Quarteroni, p 473 4. Différences finies pour les problèmes paraboliques Introduction de la forme matricielle et des conditions aux limites Ω=R + condition initiale 4.1. Equation de la chaleur, pb modèle. ∂u ∂ 2u −α 2 ∂t ∂x u (x, 0) u (0, t) u (1, t) Maillage: ∆t > 0 et = f si (x, t) ∈ ]0, 1[ × ]0, +∞[ = u0 (x) = 0 = 0 ∆x > 0 Mise en équation du problème condition initiale donnée sont le pas de temps et le pas d'espace, donnés. Ω∆t,∆x = Ωh = {(tn , xj ) = (n∆t, j∆x) , 1 ≤ j ≤ J 4.2. et n > 0} Le shéma d'Euler explicite. ∂u ∂t n 2 n ∂ u ∂x2 1 un+1 − unj + O (∆t) j ∆t 1 = unj−1 − 2unj + unj+1 + O ∆x2 2 ∆x = j j on rajoute les conditions aux limites de Dirichlet : ce qui fournit le schéma : un+1 = unj − j α∆t n n n − 2u + u + ∆t.fjn u j−1 j j+1 2 ∆x unJ+1 = 0 un0 = 0 4.2.1. Consistance. (n) εj (4.1) 4.2.2. Stabilité L2 . = O ∆x2 ∆t + O (∆t) On oublie les conditions et on écrit (4.1) sous la forme : un+1 (x) = un (x) − β (un (x − ∆x) − 2un (x) + un (x + ∆x)) On prend la transformée de Fourier des deux membres : ˆ (x) = uˆn (x) 1 − β e−iω∆x − 2 + eiω∆x un+1 d'où le coecient d'amplication : 1 − β e−iω∆x − 2 + eiω∆x ω∆x = 1 − 4β sin2 2 A (ω) = Schéma (4.2) L2 stable si et seulement si pour tout α ω ,|A (ω)| < 1 soit ∆t 1 ≤ 2 ∆x 2 Université de Pau et des Pays de l'Adour 18 Laboratoire de Mathématiques Appliquées Janvier 2010 4.2.3. Résolution d'EDP par diérences nies Ecriture matricielle du shéma. U (n) = (n) (n) (n) u1 , u2 , ..., uJ Pierre Puiseux t U (n+1) = M U (n) + ∆tF (n) (4.3) M =I −α (4.4) ∆t A ∆x2 et −1 2 ··· 0 0 . .. .. . . . −1 2 . . . . .. .. .. A = 0 0 . . . .. .. .. 2 −1 0 · · · 0 −1 2 = tridiagn (−1, 2, −1) Les valeurs propres de la matrice (4.5) donc les valeurs propres (4.6) 4.2.4. A sont π λk = 4 sin2 k ∆x , 1 ≤ j ≤ J 2 de M sont π 2 µk = 1 − 4β sin k ∆x , 1 ≤ j ≤ J 2 Stabilité, analyse matricielle. Schéma stable si et seulement si β=α (4.7) On retrouve (4.2). −2 ∆x ≈ 10 ⇒ ∆t ≈ 10−4 ou ∀k, |µk | ≤ 1 soit ∆t 1 ≤ 2 ∆x 2 J = 100 ⇒ n = 10000 pas de temps ! Sous la condition CFL, on a (1) pour tout (2) k , µk > 0 car 1 − 4β sin2 k π2 ∆x > 1 − 2 sin2 k π2 ∆x = sin (kπ∆x) kM k = sup1≤k≤J |µk | = µ1 soit encore 2 kM k = 1 − 4β sin (4.8) π 2 ∆x Pour l'inuence du second membre, voir exercice 4.2.5. convergence. sous la condition CFL, (ε (n) = erreur de troncature Ũ (n) projection de la solution exacte ) Ũ (n+1) = M Ũ (n) + ∆tF (n) + ε(n) (4.9) en soustrayant (4.9) et (4.3) on obtient l'erreur E (n+1) E (n+1) = ... = M E (n) + ε(n) M n+1 E (0) + X M k ε(n−k) k=0,n−1 Compte tenu de E (0) = 0, on en tire une majoration de l'erreur en norme euclidienne : E (n+1) X ≤ kM kk ε(n−k) k=0,n−1 ≤ 1 sup ε(n) 1 − kM k n Université de Pau et des Pays de l'Adour 19 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Pierre Puiseux (grace 2 ∆t ∆t π ∆x ≈ π 2 α∆t, et ε(n) = O (∆x∆t)+O ∆x = O (∆x) , 1−kM k = 4α ∆x 2 sin 2 ∆t à la condition CFL, = O (1)), on obtient une majoration en O (∆x) ∆x2 4.2.6. Convergence vers une solution stationnaire. De plus 4.3. Shéma d'Euler implicite. M U (n+1) = U (n) + ∆tF (n) (4.10) M =I +α (4.11) 4.3.1. Erreur de troncature locale et globale. 4.3.2. Stabilité L2 , inconditionnelle. 4.3.3. Stabilité l∞ . 4.3.4. Principe du maximum. 4.3.5. Variation totale. 4.4. TODO Le teta-schéma. Le paramètre θ ∆t A ∆x2 est pris dans l'intervalle [0, 1], ce schéma consiste à mixer les deux schémas Euler implicite et explicite, et à écrire n+1 un+1 − unj un+1 + un+1 unj−1 − 2unj + unj+1 j j−1 − 2uj j+1 (4.12) − αθ − α (1 − θ) = fjn+θ 2 2 ∆t ∆x ∆x n+θ Dans cette écriture on a posé fj = f (j∆x, (n + θ) ∆t). Sous forme matricielle, tenant compte des conditions aux limites de Dirichlet homogènes : U (n+1) = U n − 4.4.1. α∆t A θU (n+1) + (1 − θ) U (n) + ∆tF (n) 2 ∆x Consistance du θ−schéma. on pose tn+θ = (n + θ) ∆t et vjn+θ = v (j∆x, (n + θ) ∆t) Proposition 18. Soit f une fonction dénies au voisinage d'un point a ∈ R, susament régulière, et soit θ ∈ [0, 1]. Alors θf (t + ∆t) + (1 − θ) f (t − ∆t) = f (t) + (2θ − 1) f 0 (t) ∆t + O ∆t2 Démonstration. DL de f (t ± ∆t) Autrement dit, θf (t + ∆t) + (1 − θ) f (t − 1 0 2 si θ = (ou si f (t) = 0), d'ordre 1 sinon. 2 ∆t) est une approximation de f (t), d'ordre Proposition 19. Le teta-schéma est consistant d'ordre 1 en temps si θ 6= 12 et d'ordre 2 en temps si θ = 12 , et d'ordre 2 en espace. Pour θ = Nicholson. Démonstration. 1 2 il s'appelle le schéma de Cranck- On écrit l'erreur locale de troncature εn+1 = T1 + T2 + T3 j avec 1 ũn+1 − ũnj j ∆t θα n+1 ũn+1 + ũn+1 = j−1 − 2ũj j+1 2 ∆x (1 − θ) α n n n = ũ − 2ũ + ũ j j+1 j−1 ∆x2 T1 = T2 T3 Université de Pau et des Pays de l'Adour 20 Laboratoire de Mathématiques Appliquées Janvier 2010 Résolution d'EDP par diérences nies Pierre Puiseux Et on exprime T1 = puis en utilisant 18 à la fonction ∂ ũ ∂t n+ 21 j ∂ 2 ũ ∂x2 f (•) = + O ∆t2 (x, •) : n+1 ∂ 2 ũ + O ∆x2 = θα 2 ∂x j 2 n+ 21 3 n+ 12 ! ∂ ũ ∂ ũ ∆t 2 2 = θα + O ∆x + + O ∆t ∂x2 j 2 ∂x2 ∂t j T2 et enn n ∂ 2 ũ 2 = (1 − θ) α + O ∆x ∂x2 j 2 n+ 21 3 n+ 12 ! ∂ ũ ∂ ũ ∆t = (1 − θ) α − + O ∆t2 + O ∆x2 2 2 ∂x j 2 ∂x ∂t j T3 ũ étant la solution exacte, il vient : 2 n+ 21 n+ 21 3 n+ 12 ∂ ũ ∂ ũ ∆t ∂ ũ = −α + (2θ − 1) + O ∆x2 + O ∆t2 2 2 ∂t j ∂x j 2 ∂x ∂t j = (2θ − 1) O (∆t) + O ∆x2 + O ∆t2 Finalement, εn+1 j 4.4.2. Stabilité L2 . en supposant f = 0, A (ω) = on trouve 1 − 4β (1 − θ) sin2 ω ∆x 2 2 ∆x 1 + 4βθ sin ω 2 |A (ω)| < 1 pour tout ω . Ce qui équivaut à 1+4β (2θ − 1) sin2 ω ∆x > 2 φ (s) = 1 + 4β (2θ − 1) s > 0, ∀s ∈ [0, 1]. et la stabilité a lieu lorsque 0, ∀ω ∈ R ou encore í si θ > 21 cette inégalité est vériée í si θ < 21 cette inégalité est vériée si et seulement si φ (1) > 0 car φ est décroissante. Ce qui a lieu pour 1 1− 4β 1 θ > 2 Le schéma de Crank-Nicholson. 1 2 Consiste à mixer les deux schémas implicite et explicite, et à écrire (ici sous forme 4.5. C'est le θ-schéma avec θ= matricielle) (4.13) un+1 − unj α n+1 j n n n = fjn uj−1 − 2un+1 + un+1 − j j+1 + uj−1 − 2uj + uj+1 2 ∆t 2∆x Sous forme matricielle, si l'on tient compte des conditions aux limites de Dirichlet homogènes : U (n+1) n = U − βA U (n) + U (n+1) 2 + ∆tF (n) soit U (n+1) = I+ −1 β A 2 I− Université de Pau et des Pays de l'Adour β A 2 −1 β U + I+ A ∆tF (n) 2 n 21 Laboratoire de Mathématiques Appliquées Janvier 2010 í 4.6. Résolution d'EDP par diérences nies Pierre Puiseux −1 β β Étude matricielle de la stabilité. M = I + A I − A a pour valeurs propres 2 2 2−βλk 2−βx 2 π µk = 2+βλk , avec λk = 4 sin k 2 ∆x ∈ Sp (A). La fonction µ (x) = 2+βx est décroisπ 2 1−2β sin ( 2 ∆x) < 1... à sante car β > 0 donc µk est maximum pour λ1 , et ρ (M ) = 1+2β sin2 ( π2 ∆x) 1 peauner car si β > les λk ne sont pas toutes >0 2 Schéma de Richardson (saute mouton). (4.14) un+1 − un−1 α j j n n n n − u − 2u + u j j−1 + fj 2∆t ∆x2 j+1 (4.15) U (n+1) = U (n−1) − 2βAU (n) + 2∆tF (n) 4.6.1. 4.6.2. Consistance. Schéma consistant d'ordre 2 en temps, et 2 en espace ∆t Stabilité L2 . On pose β = α ∆x 2 L2 -instable. Pour le montrer, on (x, t) = (j∆x, n∆t) sous la forme C'est un schéma schéma au point suppose que f = 0, et on écrit le u(n+1) (x) = u(n−1) (x) + 2β u(n) (x + ∆x) − 2u(n) (x) + u(n) (x − ∆x) on en prend la transformée de Fourier. d d d \ (n+1) (ω) = u (n−1) (ω) + 2β u (n) (ω) eiω∆x − 2u (n) (ω) + u (n) (ω) e−iω∆x u\ d (n−1) (ω) + 2β u (n) (ω) eiω∆x − 2 + e−iω∆x = u\ ∆x d (n−1) (ω) − 8β u (n) (ω) sin2 ω = u\ 2 qui se met sous forme matricielle : (n+1) (ω) u\ (n) (ω) ud ! = A (ω) (n) (ω) ud (n−1) (ω) u\ ! avec 1 −8β sin2 ω ∆x 2 1 0 A (ω) = Le schéma est L2 -stable si et seulement si le spectre de A (ω) est contenu dans le disque |z| 6 1. Les valeurs propres de A (ω) sont les racines du polynôme 2 ∆x p (λ) = −8β sin ω − λ (−λ) − 1 2 ∆x = λ2 + 8λβ sin2 ω −1 2 q 2 ∆x 2 ∆x 2 qui admet les deux racines λ± = −4β sin ω ± 1 + 4β sin ω . 2 2 On a |λ− | > 1 pour toute valeur de ω , ce qui montre l'instabilité inconditionnelle du schéma. 4.7. Le schéma de Dufort-Franckel. (4.16) Consistance C'est le schéma Richardson stabilisé α∆t n n+1 n−1 n un+1 = un−1 + u − u + u + u + ∆t.fjn j+1 j−1 j j j j 2 ∆x 2 ∆t :O + O (∆x2 ) (conditionnellement consistant). ∆x2 Stabilité : inconditionnellement stable en norme Université de Pau et des Pays de l'Adour L2 22 Laboratoire de Mathématiques Appliquées