Université Pierre-et-Marie-Curie Licence de Mathématiques LM383
Equations différentielles. Méthodes de résolution numérique.
Travaux dirigés Année universitaire 2006-2007
Devoir n
o1 : Construction des schémas de différences finies
Corrigé
a)Les développements de Taylor demandés s’écrivent : fi±1= fi ±hfi0 +h2
2 fi00 ±h3
6 fi000 +h4
24fi(4) ±h5
120fi(5) + h6
720fi(6) ±h7
7!fi(7)+· · · fi±10 = fi0 ±hfi00 +h2
2 fi000 ±h3
6 fi(4) +h4
24fi(5) ± h5
120fi(6) +h6
720fi(7)+· · · fi±100 = fi00 ±hfi000 +h2
2 fi(4) ±h3
6 fi(5) +h4
24fi(6) ±h5
120fi(7)+· · · fi±1000 = fi000 ±hfi(4) +h2
2 fi(5) ±h3
6 fi(6) +h4
24fi(7)+· · · Remarque: C’est en cherchant à répondre aux questions suivantes que l’on va pouvoir déter- miner jusqu’où il faut faire le développement.
b.1) En injectant ces égalités dans l’équation (1) de l’énoncé, on obtient le système linéaire sous-déterminé (8 équations avec 12 inconnues) suivant :
a++a0+a− = 0 (fi)
h(a+−a−) +(b++b0+b−) = 0 (fi0) h2
2 (a++a−) +h(b+−b−) +(c++c0+c−) = 0 (fi00) h3
6 (a+−a−) +h2
2 (b++b−) +h(c+−c−) +(d++d0+d−) = 0 (fi000) h4
24(a++a−) +h3
6 (b+−b−) +h2
2 (c++c−) +h(d+−d−) = 0 (fi(4)) h5
120(a+−a−) +h4
24(b++b−) +h3
6 (c+−c−) +h2
2 (d++d−) = 0 (fi(5)) h6
720(a++a−) +h5
120(b+−b−) +h4
24(c++c−) +h3
6 (d+−d−) = 0 (fi(6)) h7
7!(a+−a−) +h6
720(b++b−) +h5
120(c+−c−) +h4
24(d++d−) = 0 (fi(7)) (8)
avec une erreur de troncature d’ordre au moinsO(h5).
b.2)D’après les développements de Taylor de la question a), on voit que l’erreur de troncature 1
peut s’écrire sous la forme suivante : R= h5
120(d+−d−)fi(8)+ h6
720((c++c−)fi(8)+ (d++d−)fi(9)) +O(h7). (9)
c.1)Comme trois des inconnues sont nulles, on a 9 inconnues et 8 équations (les 8 données par (8) avecc−=c0 =c+= 0).
A l’aide des 3ème, 5ème et 7ème équations, on obtient que a+ +a− = 0, b+ −b− = 0 et d+−d−= 0. Maintenant de la 6ème et 8ème on en déduit
b+=−5h
21a+, d+= h3
315a+. (10)
Enfin, à partir des 1ère, 2ème et 4ème équations, on obtient les expressions dea0,b0 et d0 en termes dea+ :
a0= 0, b0 =−32h
21 a+, d0=−32h3
315 a+. (11)
En divisant l’expression (1) de l’énoncé parh3 (voir (10) et (11)) et en regardant l’expression de Rdonnée dans (9), on s’aperçoit que l’ordre maximum est égal à 6 (n’oubliez pas qued+=d−!).
c.2)Comme le système d’équations (8) a une solution non nulle, elle est unique (on a 8 équations et 9 inconnues). Le schéma est donné par :
fi+1000 −32fi000+fi−1000 =−315
h3 (fi+1−fi−1) + 75
h2(fi+10 +32
5 fi0+fi−10 )− h6
360fi(9)+O(h7).
c.3) On considère juste les 6 premières équations dans (8) en imposant d+ = d− = 0. De la 3ème et la 5ème, on déduit que a++a− = 0 et b+−b− = 0. Ensuite, la 6ème nous donne l’expression deb+, la 4ème nous donne celle de d0, la 2ème celle de b0 et la 1ère celle de a0 :
b+=−h
5a+, d0 =−2h
15a+, b0 =−8h
5 a+, a0 = 0.
Donc, le schéma est unique et il est donné par 2fi000= 15
h3(fi+1−fi−1)− 3
h2(fi+10 + 8fi0+fi−10 )− h4
120fi(7)+O(h5) et l’ordre est égal à 4.
d.1)On a à nouveau 9 inconnues et 8 équations (les données par (8) avec b+ =b0 =b− = 0).
La 2ème équation impliquea+−a−= 0 et donc en combinant la 6ème et la 8ème équation on en déduitc+−c−= 0 etd++d−= 0. Enfin, la 4ème équation donned0= 0!
Cela veut dire qu’il faut imposer 7 équations (les 7 premières de (8)). Ceci donne une infinité de solutions. On choisit, par exemple, d’exprimer les inconnues en fonction dea+ etc+ :
a0 =−2a+ =−2a−, c−=−c+−4h2
15 a+, c0=−11h2 15 a+, d+=−h
3c+−7h3
360a+, d− =−5h3
72 a+−h
3c+, d0 =−4h
3 c+−8h3 45 a+. 2
Comme le terme d’ordre maximum dansRest donné par(d++d−)h244fi(7), l’ordre de la méthode est, au plus, 4.
d.2) On a vu dans la question précédente que le schéma n’est pas unique. On choisit, par exemple,c+= h152a+; cela donne
a0=−2a+=−2a−, c− =−h2
3 a+, c0=−11h2 15 a+, d+=−h3
24a+, d−=−11h3
120 a+, d0 =−4h
3 c+−8h3 45 a+. Le schéma est
fi+1000 +32
5 fi000+11
5 fi−1000 = 24
h3(fi+1−2fi+fi−1) + 8
5h(fi+10 −11fi0+ 5fi−10 )−2h4
15 fi(7)+O(h5).
d.3) Dans cette questiono, on a encore 7 inconnues donc on considère que les 6 premières équations de (8). Mais, à partir des équations 4 et 6 on en déduit qued0 = 0!
Par conséquent, on doit considèrer juste les 5 premières équations de (8), ce qui nous amène encore a une infinité de solutions possibles. En fonction dea+ etc+, ces solutions sont
a0 =−2a+=−2a−, c−=−c+−h2 6 a+, c0 =−5h2
6 a+, d0 =−2hc+−h3 6 a+.
Dans l’expression de l’erreur, le terme dominant est h63(c+−c−)fi(5) donc l’ordre maximum est 2.
Par exemple, avec le choixc+= h122a+ on a le schéma : fi000 = 3
h3(fi+1−2fi+fi−1) + 1
4h(fi+10 −10fi0−3fi−10 )− h2
12fi(5)+O(h3).
e)On doit compléter les 8 équations de (8) avec les 3 équations suivantes :
h8
8!(a++a−) +h7
7!(b+−b−) +h6
720(c++c−) +h5
120(d+−d−) = 0 (fi(8)) h9
9!(a+−a−) +h8
8!(b++b−) +h7
7!(c+−c−) +h6
720(d++d−) = 0 (fi(9)) h10
10!(a++a−) +h9
9!(b+−b−) +h8
8!(c++c−) +h7
7!(d+−d−) = 0 (fi(10)) Maintenant, on a 12 inconnues et 11 équations. A l’aide des équations 5ème, 7ème, 9ème et 11ème, on obtient que
a++a−= 0, b+−b−= 0, c++c−= 0, d+−d−= 0.
D’après les équations 1ère et 3ème, on aa0 =c0 = 0. Ensuite, en combinant les équations 6èmè, 8ème et 10ème, on en déduit
b+=−41h
105a+, c+= 2h2
35 a+, d+=− h3 315a+. 3
Enfin, les équations 2ème et 4ème donnent b0=−128h
105 a+, d0 =−16h3 315a+.
Donc, ce schéma est unique et, comme le terme dominant de l’erreur de troncature est h8
8!(d++d−)fi(11), l’ordre maximum est 8. Ce schéma est donné par
fi+1000 + 16fi000+fi−1000 = 18
h (fi+100 −fi−100 )−123
h2 (fi+10 +128
41 fi0+fi−10 ) +315
h3 (fi+1−fi−1)−2h8
8! fi(11)+O(h9).
4