Compte rendu des TP matlab Krell Stella, Minjeaud Sebastian 18 décembre 006 1 TP1, Discrétisation de problèmes elliptiques linéaires 1d Soient > 0, a R, b 0, c, d R et f C([0, 1], R). On cerce à approcer la solution u du problème suivant : u xx (x) + au x (x) + bu(x) = f(x), x [0, 1], u(0) = c, u(1) = d. (1) Téorème 1. Dans C ([0, 1], R), il existe une unique solution u vériant le problème (1). Démonstration : Unicité : Métode d'énergie. Supposons que u et v soient deux solutions de classe C ([0, 1], R) du problème (1). La diérence ψ = u v est alors solution du problème suivant : ψ xx (x) + aψ x (x) + bψ(x) = 0, x [0, 1], ψ(0) = 0, ψ(1) = 0. On multiplie l'équation par ψ et on intègre sur [0, 1] pour obtenir : 1 0 ( ψ xx(x) + aψ x (x) + bψ(x)) ψ(x)dx = 0 1 1 }{{} 0 ψ x(x)dx + }{{} b 0 ψ (x)dx = 0 >0 0 Donc 1 0 ψ x(x)dx = 0, on obtient x [0, 1], ψ x (x) = 0. Ainsi ψ est un fonction constante, x [0, 1], ψ(x) = ψ(0) = 0. Finalement, u = v. Existence : Métode de tir. On s'intéresse au problème suivant : u xx (x) + au x (x) + bu(x) = f(x), x R +, u(0) = c, u (0) = α. () Il admet, d'aprés le téorème de Caucy Lipscitz (linéaire), une unique solution globale dénie sur R + de classe C (R +, R) notée u α. Notons φ = u 0 et ψ l'unique solution (téorème de Caucy Lipscitz linéaire) du problème de caucy suivant : ψ xx (x) + aψ x (x) + buψ(x) = 0, x [0, 1], ψ(0) = 0, ψ (0) = 1. Par unicité, u α = φ + αψ. On a u α (1) = φ(1) + αψ(1). On montre par une métode d'énergie que ψ(1) est non nul. On peut alors poser α = d φ(1). u α [0,1] est la solution du problème (1). ψ(1) Remarque 1 : On peut également démontrer ce téorème en passant par une formulation faible. 1
Téorème. Principe du maximum : Notons u l'unique solution du problème (1). Dans le cas b > 0, on a x [0, 1], m u(x) M avec M = max m = min {c, d, 1b } min {f(x), x [0, 1]}. {c, d, 1b max {f(x), x [0, 1]} } et Dans le cas b = 0 et sous l'ypotèse f 0, on a x [0, 1], u(x) min(c, d) autrement dit le minimum de u est atteint sur la frontière de [0, 1],. Démonstration : Premier cas : Supposons d'abord a = b = 0 et f 0. u (x) = f(x) Soit δ > 0, posons v δ (x) = u(x) δx. Soit x 0 [0, 1] tel que v δ (x 0 ) = min{v δ (x), x [0, 1]}. Un tel x 0 existe par compacité puisque v δ est continue. Si x 0 ]0, 1[, alors v δ (x 0) = 0 et v δ (x 0) 0 ie u (x 0 ) δ 0 donc f(x 0 ) + }{{} δ 0 0 >0 Contradiction, donc x 0 = 0 ou 1 et x [0, 1], u(x) u(x) δx min (u(0), u(1) δ). Ceci est valable pour tout δ > 0, donc x [0, 1], u(x) min (u(0), u(1)). Deuxième cas : Supposons a 0, b = 0 et f 0. u (x) + au (x) = f(x) Soit δ > 0, posons v δ (x) = u(x) δe ax. Soit x 0 [0, 1] tel que v δ (x 0 ) = min{v δ (x), x [0, 1]}. Si x 0 ]0, 1[, alors v δ (x 0) = 0 et v δ (x 0) 0. On a donc u (x 0 ) = aδe ax0 et par suite v δ (x 0 ) a e ax0 a δe ax0 = f(x 0 ) 0 0 <0 Contradiction, donc x [0, 1], u(x) min (u(0) δ, u(1) δe a ). Ceci est valable pour tout δ > 0, donc x [0, 1], u(x) min (u(0), u(1)). Troisième cas : Supposons b > 0. Soit x 0 tel que u(x 0 ) = min {u(x), x [0, 1]}. On diérencie deux cas : Si x 0 ]0, 1[, on a u (x 0 ) = 0, u (x 0 ) 0 et comme u vérie (1), on a : donc u(x 0 ) 1 b f(x 0) m, ie x [0, 1], u(x) m. Si x 0 {0, 1}, x [0, 1], u(x) u(x 0 ) m. Dans tous les cas, x [0, 1], u(x) m. u(x 0 ) = 1 b f(x 0) + b u (x 0 ) Remarque : Ce téorème montre le principe de posivité suivant : Si c, d, f 0 alors u 0. On a considéré 4 exemples : 1. = 1, a = b = c = d = 0, f = 1, la solution est u(x) = 1 x(1 x). = 1, a = b = c = d = 0, f(x) = 1x + 1x, la solution est u(x) = x (1 x)
3. = 1/4, a = 1, b = 3, c = 1, d = exp( ), f = 0, la solution est u(x) = exp( x) 4. = 1/100, a = 1, b = 0, c = 0, d = 1, f = 0, la solution est u(x) = 1 e 100 1 (e100x 1) L'exemple 4 est un problème raide. La solution exacte est dicile à approcer si est petit, la variation se fait dans un intervalle très petit (de longueur 5 ), il faut donc que soit très petit. La limite de u dans le quatrième exemple quand 0 : u(x) = = 0 e x 1 e 1/ 1 e x 1 e 1 1 e 1 0 si x < 1 1 si x = 1 si x > 1 Pour illustrer le principe du maximum, on trace les solutions u sur [0,1] avec m et M. Fig. 1 Solution pour l'exemple 1 Fig. Solution pour l'exemple Fig. 3 Solution pour l'exemple 3 Fig. 4 Solution pour l'exemple 4 Pour l'exemple 1 et, on a a = b = 0, donc x [0, 1], u(x) min (u(0), u(1)) (gure 1, ). Pour l'exemple 3, on a a, b sont non nuls, donc x [0, 1], M u(x) m (gure 3). Pour l'exemple 4, on a a = 1, b = 0, donc x [0, 1], u(x) min (u(0), u(1)) (gure 4). 3
1.1 Discrétisation par Diérences Finies (DF) centrées Soit N N. On note = 1/(N + 1) et x i = i, i = 1,.., N. La discrétisation du problème par diérences nies centrées avec un maillage uniforme de pas s'écrit : ( + a ) ( ) ( a u i 1 + + b u i + ) u i+1 = f i,, i =,.., N 1 ( ) ( a + b u 1 + ) ( u = f 1 + + a ) c, (3) ( + a ) ( ) ( u N 1 + + b u N = f N + a ) d. Les inconnues discrètes u 1,.., u N sont supposées approcer les valeurs de u aux points x 1,.., x N. Téorème 3. Supposons l'existence d'une solution, notée {u j } j {1,..,N}, du système linéaire (3). Sous l'ypotèse a, on a le principe du maximum discret suivant : Dans le cas b > 0, on a i {1,.., N}, m u i M avec M = max {c, d, 1b } max {f(x), x [0, 1]} et m = min {c, d, 1b } min {f(x), x [0, 1]}. Dans le cas b = 0 et sous l'ypotèse f 0, on a i {1,.., N}, u i min(c, d). Démonstration : Posons u 0 = c et u N+1 = d. On a alors i {1,.., N}, (u i u i+1 ) + (u i u i 1 ) + a (u i+1 u i 1 ) = f i bu i Soit i 0 = min{i {0,.., N + 1} tel que u i = min{u j } j {0,..,N+1} }. Premier cas : Supposons d'abord b ( = 0 et f 0. Si i 0 {1,.., N}, on peut écrire (u i0 u i0+1) a ) ( + (u i0 u i0 1) } {{ } + a ) = f i0 } {{ } }{{} 0 <0 0 0 >0 Contradiction, donc i 0 = 0 ou N + 1 et par suite i {1,.., N}, u i u i0 min(c, d). Deuxième cas : Supposons b > 0. ( Si i 0 {1,.., N}, on peut écrire a ) ( + a ) (u i0 u i0+1) 0 } {{ } 0 + (u i0 u i0 1) <0 donc i {1,.., N}, u i u i0 1 b f i 0 m. Si i 0 = 0 ou N + 1 alors i {1,.., N}, u i u i0 m. } {{ } >0 = f i0 bu i0 Fig. 5 > a, N = 45 (ex4) par DF Fig. 6 a, N = 100 (ex4) par DF 4
On illustre le principe du maximum discret pour l'exemple 4 (la solution exacte est toujours positive) sous les conditions > gure 5 et gure 6. a a Téorème 4. Existence et unicité de la solution discrète : Sous l'ypotèse a, F R N, il existe un unique vecteur u = (u 1,.., u N ) solution de Au = F où A est la matrice associée au système linéaire (3). Démonstration : Le principe du maximum discret ci-dessus avec c = d = 0 permet d'écrire (Au 0 = u 0). Soit u tel que Au = 0, on a Au = A( u) 0 donc u 0 et Au 0 donc u 0 donc u = 0. La matrice A est inversible. La solution approcée u = (u 1,.., u N ) n'existe pas toujours. En eet si = 0, a = 1, b = 0, c = 0, d = 1, f = 0, le scéma DF : 1 u i 1 + 1 u i+1 = 0,, i =,.., N 1 1 u = 0, 1 u N 1 = 1. Si N = p, on obtient u i = 0 et u i+1 = 1. Si N = p + 1, on n'a pas de solution. On applique le scéma (3) des diérences nies à nos 4 exemples (gure 7, 8, 9, 10) sous l'ypotèse a. Fig. 7 Solution exacte-approcée par DF pour ex1 Fig. 8 Solution exacte-approcée par DF pour ex Fig. 9 Solution exacte-approcée par DF pour ex3 Fig. 10 Solution exacte-approcée par DF pour ex4 5
Téorème 5. Ordre de consistance : Le scéma diérence nie centrée (3) est consistant d'ordre. Démonstration : En eet, en faisant le développement de Taylor de u : θ 1, θ 3 [x i, x i+1 ] et θ, θ 4 [x i 1, x i ] tels que u(x i+1 ) = u(x i ) + u (x i ) + u (x i ) + 3 6 u (x i ) + 4 4 u(4) (θ 1 ) u(x i 1 ) = u(x i ) u (x i ) + u (x i ) 3 6 u (x i ) + 4 4 u(4) (θ ) On obtient l'erreur de consistance R i : R i = u xx (x i ) + au x (x i ) + bu(x i ) (u(x i) u(x i 1 ) u(x i+1 )) a (u(x i+1) u(x i 1 )) bu(x i ) ( ) ( ) = u (4) (θ 1 ) + u (4) (θ ) a u (3) (θ 3 ) + u (3) (θ 4 ) 4 1 ( R i 1 u(4) + a ) 6 u(3) Pour le premier exemple (gure 11), on obtient une erreur numérique de l'ordre de l'erreur macine. C'est du au fait que la solution exacte est un polynôme d'ordre deux et donc que le scéma est exact. Pour les autres exemples (gure 1, 13 et 14), on obtient une erreur d'ordre. Fig. 11 ln( u(x i ) u i ) pour l'exemple 1 pour DF Fig. 1 ln( u(x i ) u i ) pour l'exemple par DF Fig. 13 ln( u(x i ) u i ) pour l'exemple 3 par DF Fig. 14 ln( u(x i ) u i ) pour l'exemple 4 par DF Bilan : Le scéma diérence nie centrée (3) est consistant d'ordre mais il ne vérie pas le principe du maximum pour tout > 0. 6
1. Discrétisation par Volumes Finis Centrés (VFC) Soit N N. On pose x i+1/ = i, i = 1,.., N, x i = i /, i = 1,.., N et i =, pour i = 1,.., N et 0 = N+1 =. On intégre l'équation sur une maille M i = [x i 1/, x i+1/ ] : où f i = xi+1/ u (x i+1/ ) + u (x i 1/ ) + au(x i+1/ ) au(x i 1/ ) + b u(x)dx = f i, pour i = 1,.., N x i 1/ xi+1/ x i 1/ f(x)dx. On note u 1,.., u N les inconnues discrètes approcant les valeurs de u aux points x 1,.., x N. Pour approcer la solution u du problème, on propose le scéma numérique suivant : F i+1/ F i 1/ + bu i = f i, i = 1,.., N avec (F i+1/ ) i {0,..,N} donné par les expressions suivantes : u i+1 u i + a u i+1 + u i, i = 1,.., N 1 F i+1/ = u 1 c + ac d u N + ad Le scéma numérique donne un système linéaire de N équations à N inconnues : ( + a ) ( ) ( a u i 1 + + b u i + ) u i+1 = f i,, i =,.., N 1 ( 3 + b + a ) ( a u 1 + ) ( u = f 1 + + a ) c, ( + a ) ( 3 u N 1 + + b a ) ( a u N = f N ) d. (4) Téorème 6. Existence et unicité de la solution discrète : F R N, il existe un unique vecteur u = (u 1,.., u N ) solution de Au = F où A est la matrice associée au système linéaire (4). Démonstration : On suppose que c = d = f = 0 et on pose u 0 = u N+1 = 0. on multiplie le scéma par u i et on somme pour i = 1,.., N : N 1 (u i+1 u i ) + (u 1 + u N) a F i+1/ F i 1/ + bu i = 0 F i+1/ (u i+1 u i ) + b u i = 0 =0 (u i+1 u i )(u i+1 + u i ) +b u i = 0 Tous les termes sont positifs donc i = 1,.., N, u i = 0. Donc A est inversible. On applique le scéma (4) des volumes nies centrés à nos 4 exemples (gures 15, 16, 17, 18). 7
Fig. 15 Solution exacte-approcée par VFC pour ex1 Fig. 16 Solution exacte-approcée par VFC pour ex Fig. 17 Solution exacte-approcée par VFC pour ex3 Fig. 18 Solution exacte-approcée par VFC pour ex4 Téorème 7. Convergence : Le scéma volume ni centré (4) est convergent d'ordre 3. On pose e i = u(x i ) u i, pour i = 1,.., N et e 0 = e N+1 = 0. (e i+1 e i ) i C 3 quand est petit e i C 3/ Démonstration : Consistance : On pose u i = u(x i ), pour i = 1,.., N F i+1/ F i 1/ + bu i = f i avec (F i+1/ ) i {0,..,N} donné par les expressions suivantes : u i+1 u i + a u i+1 + u i + R i+1/, i = 1,.., N 1 F i+1/ = u 1 c + ac + R 1/ d u N + ad + R N+1/ Pour i = 1,.., N 1, on a : θ 1, θ 3 [x i+1/ ; x i+1 ] et θ, θ 4 [x i ; x i+1/ ] tels que 8
( R i+1/ = u (x i+1/ ) u ) ( i+1 u i + a u(x i+1/ ) u ) i+1 + u i ( ) = u (3) (θ 1 ) + u (3) (θ ) a 48 4 (u (θ 3 ) + u (θ 4 )) R i+1/ C Pour i = 0, on a : θ 1 [0; x 1 ] tel que De même pour i = N : Erreur : On a pour i = 1,.., N : Donc e i vérie : R 1/ = = 4 u (θ 1 ) R 1/ C ( u (0) u ) 1 u(0) + a (u(0) u(0)) R N+1/ C F i+1/ F i 1/ + bu i = f i F i+1/ F i 1/ + bu i = f i G i+1/ G i 1/ + be i = 0 avec G i+1/ = F i+1/ F i+1/. En reprenant les calculs faits dans l'existence et l'unicité des u i, on obtient : G i+1/ G i 1/ + be i = 0 (e i+1 e i ) + b e i = R i+1/ (e i+1 e i ) i N 1 (e i+1 e i ) + e 1 + e N + b e i = On a encore N 1 N 1 R i+1/ (e i+1 e i ) + R 1/ e 1 R N e N (e i+1 e i ) + e 1 + N 1 e N R 1/ e 1 + R N e n + C (e i+1 e i ) i i 4 R 1/ + e 1 + 4 R N + e n + C N 1 ( (e i+1 e i ) 3 i 4 C + 3 4 C + N C ( (e i+1 e i ) N ) 1/ C 3 + (e i+1 e i ) i 1 C4 + 1 (e i+1 e i ) + C 3 i C( 4 + 3 ) ( N ) 1/ (e i+1 e i ) C 3/ quand est petit i (e i+1 e i ) C 4 e i N (e j+1 e j ) 1/ + 1 j=0 C 3/ i (e i+1 e i ) i i ) 1/ ( (e i+1 e i ) N ) 1/ i i 1 On a vu que téoriquement on a une erreur d'ordre 3, mais numériquement pour nos exemples (gures 19 0, 1 et ) on trouve une erreur d'ordre. 9
Fig. 19 ln( u(x i ) u i ) pour l'exemple 1 par VFC Fig. 0 ln( u(x i ) u i ) pour l'exemple par VFC Fig. 1 ln( u(x i ) u i ) pour l'exemple 3 par VFC Fig. ln( u(x i ) u i ) pour l'exemple 4 par VFC Téorème 8. Sous l'ypotèse a, on a le principe du maximum discret suivant : Dans le cas b > 0, on a i {1,.., N}, m u i M avec M = max {c, d, 1b } max {f(x), x [0, 1]} et m = min {c, d, 1b } min {f(x), x [0, 1]}. Dans le cas b = 0 et sous l'ypotèse f 0, on a i {1,.., N}, u i min(c, d). Démonstration : Posons u 0 = c et u N+1 = d. On a alors i {1,.., N}, (u i u i+1 ) + i i (u i u i 1 ) + a i (u i+1 u i 1 ) = f i bu i Soit i 0 = min{i {0,.., N + 1} tel que u i = min{u j } j {0,..,N+1} }. Premier cas : Supposons d'abord b = 0 et f 0. Si i 0 {1,.., N}, on peut écrire( ) ( (u i0 u i0+1) 0 a i 0 i0 0 + (u i0 u i0 1) <0 ) + a i 0 i0 >0 = f i0 }{{} 0 Contradiction, donc i 0 = 0 ou N + 1 et par suite i {1,.., N}, u i u i0 min(c, d). Deuxième cas : Supposons b > 0. Si i 0 {1,.., N}, on peut écrire 10
( (u i0 u i0+1) a i 0 0 i0 0 donc i {1,.., N}, u i u i0 1 b f i 0 m. Si i 0 = 0 ou N + 1 alors i {1,.., N}, u i u i0 m. ) ( + (u i0 u i0 1) + a i 0 <0 i0 ) >0 = f i0 bu i0 On illustre le principe du maximum discret pour l'exemple 4 (la solution exacte est toujours positive) sous les conditions > gure 3 et gure 4. a a Fig. 3 > a, N = 45 (ex4) par VFC Fig. 4 a, N = 100 (ex4) par VFC Bilan : on a un scéma d'ordre 3 du maximum pour tout > 0. téorique, numériquement on montre un ordre et on n'a pas le principe 1.3 Discrétisation par Volumes Finis Décentrés (VFDC) Pour approcer la solution u du problème, on propose le scéma numérique suivant (avec les mêmes notations que la partie VF centrés) : F i+1/ F i 1/ + bu i = f i, i = 1,.., N avec (F i+1/ ) i {0,..,N} donné par les expressions suivantes : u i+1 u i + au i, i = 1,.., N 1 F i+1/ = u 1 c + ac d u N + au N Le scéma numérique donne un système de N équations à N inconnues : ( ) + a ( u i 1 + + a ) + b u i u i+1 = f i,, i =,.., N 1 ( 3 + b + a ) u 1 ( u = f 1 + + a ) c, ( ) + a ( 3 u N 1 + + b + a ) u N = f N + d. (5) 11
Téorème 9. Existence et unicité de la solution discrète : F R N, il existe un unique vecteur u = (u 1,.., u N ) solution de Au = F où A est la matrice associée au système linéaire (5). Démonstration : On suppose que c = d = f = 0 et on pose u 0 = u N+1 = 0. on multiplie le scéma par u i et on somme pour i = 1,.., N : F i+1/ F i 1/ + bu i = 0 F i+1/ (u i+1 u i ) + b u i = 0 N 1 (u i+1 u i ) + (u 1 + u N ) a N 1 (u i+1 u i ) ( + a (u i+1 u i )u i 1 (u i+1 u i ) ( + a ) ) + (u 1 + u N ) Tous les termes sont positifs donc i = 1,.., N, u i = 0. Donc A est inversible. +b + b u i = 0 u i = 0 On n'applique le scéma (5)des volumes nis décentrés que pour les exemples 3 et 4 (gures 5, 6 ), car a 0, sinon on a le même scéma que volumes nis centrés. Fig. 5 Solution exacte-approcée par VFDC pour ex3 Fig. 6 Solution exacte-approcée par VFDC pour ex4 Téorème 10. Convergence : Le scéma volume ni décentré (5) est convergent d'ordre 1. On pose e i = u(x i ) u i, pour i = 1,.., N et e 0 = e N+1 = 0. (e i+1 e i ) C i e i C Démonstration : Consistance : On pose u i = u(x i ) pour i = 1,.., N F i+1/ F i 1/ + bu i = f i avec (F i+1/ ) i {0,..,N} donné par les expressions suivantes : 1
F i+1/ = u i+1 u i + au i + R i+1/, i = 1,.., N 1 u 1 c + ac + R 1/ d u N + au N + R N+1/ Pour i = 1,.., N 1, on a θ 1 [x i+1/ ; x i+1 ] et θ, θ 3 [x i ; x i+1/ ] tels que ( R i+1/ = u (x i+1/ ) u ) i+1 u i + a ( ) u(x i+1/ ) u i ( ) = u (3) (θ 1 ) + u (3) (θ ) + a 48 u (θ 3 ) R i+1/ C Pour i = 0, on a : θ 1 [0; x 1 ] tel que De même pour i = N : R 1/ = = 4 u (θ 1 ) R 1/ C On obtient pour i = 0,.., N : R i+1/ C. Erreur : On a pour i = 1,.., N : ( u (0) u ) 1 u(0) R N+1/ C F i+1/ F i 1/ + bu i = f i F i+1/ F i 1/ + bu i = f i Donc e i vérie : G i+1/ G i 1/ + be i = 0 avec G i+1/ = F i+1/ F i+1/. En reprenant les calculs faits dans l'existence et l'unicité des u i, on obtient : (e i+1 e i ) On a encore i + a G i+1/ G i 1/ + be i = 0 (e i+1 e i ) + b e i = R i+1/ (e i+1 e i ) e i C (e i+1 e i ) C 3 (e i+1 e i ) i i ( N ) 1/ ( (e i+1 e i ) N ) 1/ C i N (e j+1 e j ) 1/ + 1 C j=0 i 1 On trouve numériquement l'ordre téorique, ie 1, pour nos exemples 3 et 4 (gures 7, 8) 13
Fig. 7 ln( u(x i ) u i ) pour l'exemple 3 par VFDC Fig. 8 ln( u(x i ) u i ) pour l'exemple 4 par VFDC Téorème 11. On a le principe du maximum discret suivant : Dans le cas b > 0, on a i {1,.., N}, m u i M avec M = max m = min {c, d, 1b } min {f(x), x [0, 1]}. {c, d, 1b } max {f(x), x [0, 1]} et Dans le cas b = 0 et sous l'ypotèse f 0, on a i {1,.., N}, u i min(c, d). Démonstration : Posons u 0 = c et u N+1 = d. On a alors i {1,.., N}, (u i u i+1 ) + (u i u i 1 ) + a (u i u i 1 ) = f i bu i i i i Soit i 0 = min{i {0,.., N + 1} tel que u i = min{u j } j {0,..,N+1} }. Premier cas : Supposons d'abord b = 0 et f 0. Si i 0 {1,.., N}, on peut écrire ( (u i0 u i0+1) 0 i 0 }{{} 0 + (u i0 u i0 1) <0 i 0 + a i0 ) >0 = f i0 }{{} 0 Contradiction, donc i 0 = 0 ou N + 1 et par suite i {1,.., N}, u i u i0 min(c, d). Deuxième cas : Supposons b > 0. Si i 0 {1,.., N}, on peut écrire (u i0 u i0+1) 0 i 0 }{{} 0 ( + (u i0 u i0 1) <0 donc i {1,.., N}, u i u i0 1 b f i 0 m. Si i 0 = 0 ou N + 1 alors i {1,.., N}, u i u i0 m. i 0 + a i0 ) >0 = f i0 bu i0. Bilan : On a toujours le principe du maximum sans condition sur mais on n'a plus de convergence d'ordre 1.4 Discrétisation par Volumes Finis décentrés d'ordre, sans limiteurs (VFDCSL) Pour approcer la solution u du problème, on propose le scéma numérique suivant : F i+1/ F i 1/ + bu i = f i, i = 1,.., N avec (F i+1/ ) i {0,..,N} donné par les expressions suivantes : 14
F i+1/ = u i+1 u i + au i + a p i, i = 1,.., N 1 u 1 c + ac d u N + au N où p i = u i+1 u i 1, i =,.., N 1 et p 1 = p N = 0. Le scéma numérique donne un système de N équations à N inconnues : ( a 4 u i + 5a ) ( u i 1 + 4 + 3a ) ( a 4 + b u i + 4 ) u i+1 = f i,, i = 3,.., N 1 ( 3 + b + a ) u 1 ( u = f 1 + + a ) c, ( + 5a ) ( u 1 + 4 + b + a ) ( a u + 4 ) u 3 = f, a ( 4 u N + a ) ( 3 u N 1 + + b + 3a ) u N = f N + 4 d. (6) On n'applique le scéma (6) volumes nis décentré sans limiteurs que pour les exemples 3 et 4 (gures 9, 30), car a 0, sinon on a le même scéma que volumes nis centrés. Fig. 9 Solution exacte-approcée par VFDCSL (ex3) Fig. 30 Solution exacte-approcée par VFDCSL (ex4) Rem : On n'a pas toujours le principe du maximum. Pour l'exemple 4 la solution approcée par volumes nis décentré sans limiteurs n'est pas toujours positive si > a (gure 31). Fig. 31 > a, N = 45 (ex4) par VFDCSL 15
On obtient numériquement une convergence pour les exemples 3 et 4 approcés par volumes nis décentré sans limiteurs d'ordre (gures 3, 33). Fig. 3 ln( u(x i ) u i ) par VFDCSL (ex3) Fig. 33 ln( u(x i ) u i ) par VFDCSL (ex4) Bilan : on a un scéma d'ordre mais on n'a pas le principe du maximum pour tout > 0. 1.5 Discrétisation par Volumes Finis décentrés d'ordre, avec limiteurs (VFD- CAL) Pour approcer la solution u du problème, on propose le scéma numérique suivant : F i+1/ F i 1/ + bu i = f i, i = 1,.., N avec (F i+1/ ) i {0,..,N} donné par les expressions suivantes : u i+1 u i + au i + a p i, i = 1,.., N 1 F i+1/ = u 1 c + ac d u N + au N { ui+1 u i 1 où p i = minmod }, i =,.., N 1 et p 1 = p N = 0 avec minmod{α, β, γ} =, u i+1 u i, u i u i 1 0 si α, β, γ n'ont pas tous le même signe et minmod{α, β, γ} = sign(α)min{ α, β, γ } si α, β, γ ont le même signe. Le scéma numérique donne un système de N équations à N inconnues : ( ) + a ( u i 1 + + a ) + b ( ) + a u N 1 + u i u i+1 + a (p i p i 1 ) = f i,, i =,.., N 1 ( 3 + b + a ) u 1 ( u = f 1 + + a ) c, ( 3 + b + a ) u N + a p N 1 = f N + d. (7) On n'applique le scéma (7) volumes nis décentrés avec limiteurs que pour les exemples 3 et 4 (gures 34, 35), car a 0, sinon on a le même scéma que volumes nis centrés. 16
Fig. 34 Solution exacte-approcée par VFDCAL (ex3) Fig. 35 Solution exacte-approcée par VFDCAL (ex4) Fig. 36 ln( u(x i ) u i ) par VFDCAL (ex3) Fig. 37 ln( u(x i ) u i ) par VFDCAL (ex4) On obtient numériquement une convergence d'ordre pour les exemples 3 et 4 approcés par volumes nis décentrés avec limiteurs (gures 36, 37). Bilan : On a une convergence d'ordre, le principe du maximum est vérié. Mais le scéma n'est pas explicite on doit utiliser une métode de Newton pour résoudre. Néanmoins la métode de Newton est très rapide on ne fait que 3 itérations à caque étape. 17
TP, Discrétisation de problèmes yperboliques 1d Soient f C 1 (R) et u 0 L (R). u t + (f(u)) x = 0, t ]0, + [, x R, u(x, 0) = u 0 (x), p.p dans R (8) Dans le cas où u 0 C 1 (R), on peut cercer des solutions régulières ie dans u C 1 (R ]0, + [; R) C 0 (R [0, + [; R). C'est la notion de solution forte ou classique. Cependant de telles solutions n'existent pas toujours. Téorème 1. Si f est linéaire ie c R tel que x R, f (x) = c et u 0 C 1 (R) alors il existe une unique solution classique au problème (8). Elle est dénie par t [0, + [, x R, u(x, t) = u 0 (x ct). Si f non constante alors il existe u 0 Cc (R) tel que (8) n'ait pas de u solution classique, ie u C 1 (R ]0, + [; R) C 0 (R [0, + [; R). La non-existence de solution classique dans le cas général amène à introduire la notion de solution faible (qui a encore un sens même si u 0 n'est pas régulier ie dans L (R)). Dénition 1. Si f C 1 (R), u 0 L (R), on dit que u est une solution faible du problème (8) si on a u L (R R + ; R) et ϕ Cc 1 (R [0, + [; R) (u(x, t)ϕ t (x, t) + f(u(x, t))ϕ x (x, t)) dxdt + u 0 (x)ϕ(x, 0)dx = 0 R R + R Téorème 13. Existence : Si f est linéaire ie c R tel que x R, f (x) = c et u 0 L (R) alors il existe une unique solution faible au problème (8). Elle est encore donnée par t [0, + [, x R, u(x, t) = u 0 (x ct). Dans le cas général, il existe une solution faible mais il n'y a pas nécessairement unicité. Contre exemple à l'unicité d'une solution faible : Si f(x) = x(3 x) et u 0 (x) = 1 si x < 0 et u 0 (x) = 0 si x > 0. Les 3 fonctions suivantes sont solutions faibles du problème (8) : u(x, t) = u(x, t) = u(x, t) = 1 si x < t x 3t si t < x < 3t 4t 0 si x > 3t 1 si x < 0 1 si 0 < x < t 0 si x > t 1 si x < 0 1 si 0 < x < t x 3t si t < x < 3t 4t 0 si x > 3t (9) Il faut donc imposer une condition supplémentaire aux solutions pour pouvoir garantir l'unicité. C'est la notion d'entropie. 18
Dénition. Si f C 1 (R), u 0 L (R), on dit que u est une solution entropique du problème (8) si on a u L (R R + ; R) et ϕ Cc 1 (R [0, + [; R + ), η C 1 (R) convexe, φ telle que φ = η f ux d'entropie associé (η(u(x, t))ϕ t (x, t) + φ(u(x, t))ϕ x (x, t)) dxdt + η(u 0 (x))ϕ(x, 0)dx 0 R R + R On a alors le résultat suivant. Téorème 14. Existence et unicité d'une solution faible entropique : Si f C 1 (R), u 0 L (R), alors il existe une unique solution entropique du problème (8). Cette solution a les propriétés suivantes : Si A u 0 (x) B pour presque tout x alors A u(x, t) B pour presque tout (x, t) R R +. Si u 0 L (R) L 1 (R), alors u(., t) L 1 (R), t > 0 et u(., t) L1 (R) u 0 L1 (R). Si v est une autre solution entropique avec une autre condition initiale v 0 u 0, alors u 0 v 0 = u(x, t) v(x, t) pour presque tout (x, t) R R +. Donnons quelques exemples : Ecrivons f sous la forme f(x) = f 1(x)(α + βf (x)) avec α 0, β 0 f 1 et f deux fonctions régulières de f 1 (x) + f (x) [0, 1] dans R vériant f 1 (0) = 0, f 1 croissante, f (1) = 0 et f décroissante. Nous donnons ci dessous les solutions faibles entropiques dans trois cas particuliers pour la donnée initiale u 0 dénie par u 0 (x) = 1 si x < 0 et u 0 (x) = 0 si x > 0. 1. f 1 (x) = x, f (x) = 1 x, α = 1 et β = 0 de sorte que f(x) = x. La solution de notre probléme s'écrit alors : u(x, t) = u { 0 (x t) 1 si x < t = 0 si x > t. f 1 (x) = x (1 x) 4x, f (x) =, α = 1 et β = 0 de sorte que f(x) = 4 4x + (1 x). On calcule la dérivée de f : f 8x(1 x) (x) = (4x + (1 x) ). Pour x [0, 1], 0 f (x) 5. On regarde l'enveloppe concave de f (gure 38) : f est concave sur [u, 1] où u vérie f (u )u = f(u ), ie u = 1 5. La solution exacte s'écrit alors : Fig. 38 f et son enveloppe concave pour exemple 3 19
u(x, t) = ( 1 si x < 0 x ) f 1 si 0 < x < tf (u ) t 0 si x > tf (u ) 3. f 1 (x) = x, f (x) = 1 x, α = 1 et β = de sorte que f(x) = x(3 x). On calcule la dérivée de f : f (x) = 3 4x. Pour x [0, 1], 1 f (x) 3. La fonction f concave sur [0, 1]. La solution exacte s'écrit alors : 1 si x < t u(x, t) = x 3t si t < x < 3t 4t 0 si x > 3t Nous cercons maintenant à approcer numériquement l'unique solution faible entroqique u du problème (8) sur un intervalle de temps [0, T ] où T > 0. Pour discrétiser ce problème, on utilise un maillage uniforme de pas = 1/N où N N en espace et de pas k = T/M où M N en temps. On pose x i+1/ = i, i = 1,.., N et t n = nk, n = 0,.., M. Les inconnues discrètes sont notées u n i, i Z, n {0,.., M}. La quantité un i est supposée approcer les valeurs de u(x, t) pour x ]x i 1/, x i+1/ [ et t ]t n, t n+1 [. Les scémas numériques étudiés sont de la forme : ( u n+1 i u n ) i + f n k i+1/ fi 1/ n = 0, i Z, n {0,.., M 1} u 0 i = 1 xi+1/ x i 1/ u 0 (x)dx, i Z La quantité f n i+1/ est donc supposée être une approximation de f(u(x i+1/, t n )). On pose λ = k..1 Scéma centré On considére le scéma centré : pour n {0,.., M 1}, fi+1/ n = f(un i ) + f(un i+1 ). ( f(u u n+1 i = u n n i λ i+1 ) f(u n i 1 ) ), si i { M + 1,.., M} Ce scéma est inconditionnellement instable. Dans le cas linéaire (exemple 1), on peut l'écrire pour n {0,.., M 1}, i { M + 1,.., M} : ( u u n+1 i = u n n i λ i+1 u n ) i 1 ou encore sous forme matricielle : pour n {0,.., M 1}, U n+1 = AU n +D avec (U n ) M+i = (u n i ), pour i { M + 1,.., M}, D 1 = λ, D i = 0, i {,.., M} et A une matrice carré de taille M : On peut montrer le résultat suivant : Téorème 15. 1 λ 0 0 λ............ A =. 0........ 0.......... λ λ 0 0 1 Il existe u 0 C 1 c (R, R) tel que la solution approcée calculée à l'aide du scéma centré ne converge pas vers la solution du problème continue (et cela quel que soit la relation entre et k). Nous allons simplement illustrer quelques points qui montre qu'il faut éviter d'utiliser ce scéma. 0
Le scéma centré ne conserve { pas la positivité ie ( i Z, u 0 i 0) ( i Z, u1 i 0). 0 lorsque i 0 Par exemple, si u 0 i = 1 lorsque i > 0 alors u1 0 = λ (gure 39). Le scéma centré n'est pas L -stable ie max{ u 0 i, i Z} = 1 max{ u1 i, i Z} 1. L'exemple ci-dessus illustre aussi ce point, puisque dans ce cas là max{ u 1 i, i Z} = 1 + λ (gure 40). Fig. 39 Positivité pour le scéma centré Fig. 40 Stablilité L pour le scéma centré Enn,le scéma centré n'est pas L -stable ie i Z (u0 i ) = 1 { i Z (u1 i ) 1. 0 lorsque i 0 Par exemple, si u 0 i = 1 lorsque i = 0 alors i Z (u1 i ) = (u 1 1) + (u 1 0) + (u 1 1). = 1 + λ. Scéma décentré Pour le cas linéaire (l'exemple 1), on obtient le scéma suivant : pour n {0,.., M 1} u n+1 i = (1 λ)u n i + λu n i 1, si i { M + 1,.., M} Ce scéma peut encore s'écrire sous forme matricielle : pour n {0,.., M 1}, U n+1 = AU n +D avec (U n ) i+m = (u n i ), pour i { M + 1,.., M}, D 1 = λ, D i = 0, i {,.., M} et A une matrice carré de taille M : 1 λ 0 0. A = λ.............. 0 λ 1 λ Téorème 16. Stabilité L : Si λ 1 et A u 0 B p.p alors n {0,.., M 1}, i Z on a A u n i B. Démonstration : Soit n {0,.., M 1} tel que i Z on a A u n i B. Soit i Z : u n+1 i u n+1 est une combinaison linéaire convexe de u n i, un i 1 i = (1 λ) u n i + λu n i 1. 0 donc i Z, A un+1 i B. 1
Téorème 17. Convergence : Si u 0 est C (R), λ 1, n {0,.., M 1}, i Z on pose e n i e n i CT = u(x i, t n ) u n i, on obtient Démonstration : On rappelle que la solution exacte est u 0 (x t) C (R). Consistance : Soit n {0,.., M 1}, i { n + 1,.., n} Ri n = u(x i, t n+1 ) u(x i, t n ) k C(u 0 ) + u(x i, t n ) u(x i 1, t n ) On a i Z, e 0 i = 0. L'erreur en i vérie donc : en+1 i e n i k e n+1 + en i en i 1 = R n i i = (1 λ) e n i i 1 + krn i 0 i sup j e n j + kc (n + 1)kC T C e n+1 On obtient par exemple la courbe de convergence en norme 1 suivante (gure 4) si u 0 (représentée gure 41) est donnée par la formule (10). u 0 (x) = 0 si x < 0 x 3 si 0 < x < 1 ( 3 x 3 ) 4 + 3 ( x 3 ) 41 si 1 < x < 4 3 (3 x) 3 si < x < 3 0 si x > 3 (10) Fig. 41 u 0 de classe C Fig. 4 ln( u(x i, T ) u M i 1 ) pour u 0 régulière La solution pour l'exemple 1 approcée par le scéma décentré pour t entre 0 et T est donnée par la gure 43. Les croix représentent l'emplacement du saut de la solution exacte pour λ = 1. De plus la courbe de convergence en erreur en norme 1 (gure 44) montre que l'on obtient une erreur d'ordre 1/ pour λ = 1. En eet, le téorème ci-dessus ne s'applique pas puisque u 0 n'est pas régulière.
Fig. 43 Solution approcée scéma décentré, λ = 1 Fig. 44 ln( u(x i, T ) u M i 1 ) pour le scéma décentré Inuence de λ : Si λ = 1, on a u n+1 i = u n i 1, le scéma est exact. Quand λ < 1, on observe un comportement diusif. Les gures 45 et 46 illustre ce pénomène sur des données initiales créneaux et sinus pour λ = 1. Fig. 45 Solution approcée-exacte pour u 0 créneau Fig. 46 Solution approcée-exacte pour u 0 (x) = sin(πx) On a également essayé de quantier la diusion en fonction du temps pour λ = 1. La gure 47 montre comment le nombre de maille entre le saut exact et le saut approcé evolue en fonction de t. On remarque qu'il augmente avec le temps. Fig. 47 Nombre de maille entre le saut exact et celui avec la diusion en fonction de t Le comportement diusif de ce scéma peut s'expliquer (quand les solutions sont régulières) de la manière suivante. Fixons λ < 1. Notons n {0,.., M}, i Z R i,n (u) = u(x i, t n+1 ) u(x i, t n ) + u(x i, t n ) u(x i 1, t n ) k 3
Un développement de Taylor montre que : R i,n (u) = tu(x i, t n ) + x u(x i, t n ) + λ ttu(x i, t n ) xxu(x i, t n ) + O( ) Remarque 3 : C'est cette égalité qui donne, si u est solution de t u + x u = 0, R i,n (u) C(u 0). Appliquons cette égalité à v la solution de t v + x v 1 λ xx v = 0. On obtient R i,n (v ) = O( ). En eet, tt v = t x v + 1 λ t xx v = xx v (1 λ) xxx v + λ ttv = λ xxv + O( ) R i,n (v ) = 1 λ = O( ) (1 λ) xxxx v 4 xx v + λ xxv xxv + O( ) Le scéma décentré amont approce donc la solution v du problème (11) à près. t v + x v 1 λ xx v = 0, t ]0, + [, x R, v (x, 0) = u 0 (x), p.p dans R (11) Téorème 18. Soit v la solution du problème (11) et λ < 1, alors on a n {0,.., M} sup i v (x i, t n ) u n i C La solution approcée a un comportement proce de celui de v (à près). Démonstration : On pose vi 0 = u 0(x i ), i Z et n {1,.., M 1}, vi n = v (x i, t n ). On peut donc écrire : Or v n+1 i vi n k u n+1 i u n i k + vn i vn i 1 + un i un i 1 = R i,n (v ) = 0 On pose fi n = vi n un i alors on a fi 0 = 0 f n+1 i = (1 λ)fi n + λfi 1 n + kri,n (v ) f n+1 i sup i fi n + kc (n + 1)kC T C sup i v (x i, t n ) u n i C Le terme xx v est un terme diusif. Le fait que le scéma approce v explique donc son comportement diusif. Illustrons le téorème à l'aide des scémas de la première partie. Plaçons nous dans un cas où la donnée initiale u 0 est 1-périodique et régulière par exemple u 0 (x) = sin(πx). On peut approcer la solution exacte v par diérentes métodes. Euler implicite en temps et scéma volumes nis (périodiques) centrés en espace : Si on pose v n (x) = v (x, t n ), alors on obtient v n+1 comme solution d'une équation diusion convection réaction dont le second membre est v n. 1 λ k xx v n+1 + k x v n+1 + v n+1 = v n 4
Le grapique 48 représente les diérentes courbes u, v n et u n = (u n i ) i Z à l'instant T pour λ = 1. Le téorème annonce une erreur entre (u n i ) i Z et v de l'ordre de. Observons cette diérence numériquement. La gure 49 montre que la diérence est d'ordre. Cela s'explique par le fait que nous avons coisit un scéma d'ordre 1 en temps (Euler implicite). La diérence entre u n et v n que nous observons est uniquement due à la diérence entre v et v n qui est d'ordre 1. Essayons de construire un scéma d'ordre. Fig. 48 u, v n et u n à l'instant T Fig. 49 ln( u n v n 1 ) à l'instant T Lax Wendro modié : Il est intéressant de voir que ce scéma est exactement le scéma décentré donc v n = u n. v n+1 i = vi n λ (vn i+1 vi 1) n + λ (vn i+1 vi n + vi 1) n + k 1 λ vi+1 n vn i + vn i 1 = vi n λ (vn i+1 vi 1) n + ( λ + 1 λ λ)(vi+1 n vi n + v n i 1) = vi n + λvi 1 n λvi n Crank Nicolson en temps et scéma volumes nis (périodiques) centrés en espace : Si on pose v n (x) = v (x, t n ), alors on obtient v n+1 comme solution d'une équation diusion convection réaction dont le second membre dépendant uniquement de v n. 1 λ 4 k xx v n+1 + k xv n+1 + v n+1 = v n k xv n + 1 λ k xx v n 4 Le grapique 50 représente les diérentes courbes u, v n et u n à l'instant T pour λ = 1. Le téorème annonce une erreur entre (u n i ) i Z et v de l'ordre de. Dans ce cas, la diérence entre v et v n est d'ordre, donc la diérence entre u n et v n est aussi d'ordre (gure 51). Fig. 50 u, v n et u n à l'instant T Fig. 51 ln( u n v n 1 ) à l'instant T 5
Dans le cas où f n'est pas linéaire, on peut généraliser le scéma précédent en tenant compte du signe de f : pour i { n + 1,.., n} f n i+1/ = { f(u n i ) si f (u(x i+1/, t n )) > 0 f(u n i+1 ) si f (u(x i+1/, t n )) < 0 Pour l'exemple : La solution approcée par le scéma décentré pour t entre 0 et T est donnée par la gure 5 pour λ = 1 6. Les croix désignent l'emplacement du saut de la solution exacte. Pour λ = 3 4, on obtient une solution faible non entropique gure 53. Fig. 5 Solution approcée (ex) pour t [0, T ] Fig. 53 Solution approcée (ex) pour t = T, λ = 3 4 Pour l'exemple 3 : On obtient des solutions faibles non entropique (gure 54, 55) (dont les expressions sont données en exemple (9)). Fig. 54 Solution approcée (ex3) pour t = T, λ = 1 Fig. 55 Solution approcée (ex3) pour t = T, λ = 1 6.3 Scéma à ux monotone Dans la suite, on va considérer des scémas à ux monotone ie fi+1/ n = g(un i, un i+1 ) où g est une fonction croissante du premier argument et décroissante du second argument. 6
Téorème 19. Stabilité L : Soit un scéma avec ux g monotone, g M-Lipscitz sur [A, B] avec A u 0 B p.p et si k A u n i B, i Z, n N et donc u τ,k est bornée dans L (R R + ; R). M, alors Démonstration : u n+1 i = u n i k (g(un i, u n i+1) g(u n i 1, u n i )) = u n i λ g(un i, un i+1 ) g(un i, un i ) u n i+1 (u n un i+1 u n i ) λ g(un i, un i ) g(un i 1, un i ) i u n i (u n un i u n i 1) i 1 = u n i + Ci n (u n i+1 u n i ) + Di n (u n i 1 u n i ) avec Ci n = λ g(un i, un i+1 ) g(un i, un i ) u n i+1 un i monotone. 0 et D n i = λ g(un i, un i ) g(un i 1, un i ) u n i un i 1 u n+1 i = u n i (1 C n i D n i ) + C n i u n i+1 + D n i u n i 1 0 grâce au fait que g est un ux Une condition susante pour que u n+1 i soit combinaison linéaire convexe de u n i 1, un i et u n i+1 est que : Cn i 1, Dn i 1. Or Cn i km, Dn i km et sous la condition CFL : k M on a bien Cn i 1, Dn i 1. Donc si A u n i B, i Z on a A un+1 i B, i Z. Téorème 0. Convergence : Soit u L (R R + ; R) la solution entropique du problème (8), u 0 L (R), f C 1 (R), un scéma avec ux g monotone, g M-Lipscitz sur [A, B] avec A u 0 B p.p. Soit u τ,k la solution approcée pour τ un maillage de R, si τ et k satisfont la CFL : k u τ,k,k 0 u dans Lp loc p < M, alors On a considéré exemples : On considére le scéma "amont des pétroliers" : f(a) si 1 + f 1 (a) 0 g P (a, b) = f 1 (a)(1 + f (b)) si 1 + f 1 (a) > 0 f 1 (a) + f (b) La solution pour l'exemple 3 approcée par le scéma "amont des pétroliers" pour t entre 0 et T est donnée par la gure 56 pour λ = 1 6. On regarde l'erreur en norme 1, on a obtenu une erreur d'ordre 0.8 gure 57. Fig. 56 Solution approcée (ex3) pour t [0, T ] Fig. 57 ln( u(x i, T ) u M i 1 ) "amont des pétroliers" 7
Fig. 58 Pour l'exemple 3 approcé par le scéma "amont des pétroliers" λ = 3 4 On n'obtient pas une solution pour λ = 3 4 (gure 58) pour l'exemple 3 approcé par le scéma "amont des pétroliers". On considére le scéma de Godunov : { min{f(c), c [a, b]} si a b g G (a, b) = max{f(c), c [b, a]} si a > b La solution pour l'exemple 3 approcée par le scéma de Godunov pour t entre 0 et T est donnée par la gure 59 pour λ = 1 6. On regarde l'erreur en norme 1, on a obtenu une erreur d'ordre 0.8 gure 60. Fig. 59 Solution approcée (ex3) pour t [0, T ] Fig. 60 ln( u(x i, T ) u M i 1 ) pour le scéma de Godunov 8