4 Méthodes d`intégration numérique

Transcription

4 Méthodes d`intégration numérique
4
Méthodes d’intégration numérique
{révisions} : intégrales – polynômes
On s’intéresse ici à un calcul d’intégrale
b
Z
I :=
f (t) dt ,
a
lorsqu’on ne connait pas de primitive exprimable en fonctions élémentaires, ce qui est le cas par
2
exemple pour f (t) = e−t . Sauf cas particulier où on pourrait calculer I de façon exacte par une
démonstration mathématique, typiquement on sait que
√
Z +∞
π
−t2
,
e dt =
2
0
il faut en général trouver des méthodes pour approcher I de façon satisfaisante.
Dans ce chapitre, nous allons nous restreindre au cas où −∞ < a < b < +∞ et f est une
fonction continue sur [a, b]. Le cas où l’une des bornes (ou les deux) est infinie relève d’une approche
un peu plus poussée que nous n’aborderons pas ici (cf. cours de L3).
4.1
Première approche
Une idée assez simple et naturelle consiste à remplacer la fonction f par une fonction g pour
laquelle on sait assez facilement calculer l’intégrale, ce qui est notamment le cas si g est un polynôme.
Cela suppose néanmoins que g “approche” f de façon assez raisonnable, ce qui est loin d’être si
simple, comme on va le voir. Commençons par remplacer f par une droite : on calcule la droite qui
passe par les points (a, f (a)) et (b, f (b)) et on espère que l’intégrale de la fonction g obtenue sera
assez proche de celle de f .
{calcul concret} : cette droite est définie ainsi
y = g(x) :=
f (b) − f (a)
(x − a) + f (a) .
b−a
Ainsi, l’intégrale de g sur [a, b] vaut exactement
Z
b
g(t) dt =
a
b
f (b) − f (a) b − a
(x − a) a + (b − a)f (a) =
f (a) + f (b) ,
b−a
2
ce qui n’est rien d’autre que le calcul de l’aire d’un trapèze, évidemment.
Il est clair que dans de nombreux cas, cette méthode ne peut fournir une bonne valeur approchée
de l’intégrale de f , car elle ne prend en compte que es valeurs de f aux extrémités de l’intervalle.
On peut alors chercher à prendre en compte d’autres points, répartis dans l’intervalle [a, b] mais
nous sommes ici confrontés à la différence entre entre approximation et interpolation.
On renvoit au cours de L3 pour une discussion plus approfondie de ce qui suit, mais pour
comprendre le problème, il ne faut pas confondre :
27
(i ) l’approximation qui consiste à trouver une fonction g telle que la “distance“ entre f et g soit
petite. La façon de mesurer les distances peut prendre plusieurs formes mais on peut par
exemple prendre sup |f (x) − g(x)|.
[a,b]
(ii ) l’interpolation qui consiste, étant donné une subdivision (xi ) finie de [a, b], à calculer un
polynôme g qui coïncide avec f aux points (xi ).
La grande difficulté est que s’il est assez simple de construire des polynômes d’interpolation, cela
n’entraîne pas que l’on a une bonne approximation de f pour autant, même si le nombre des (xi )
est très élevé. Pour calculer les intégrales, on va donc procéder un peu plus subtilement, mais on va
quand même se servir d’interpolation.
4.2
Intégration élémentaire par interpolation
On va s’intéresser ici à des formules d’intégration dites élémentaires, ce qui signifies qu’elles
seront basiques, peu précises, mais qu’elles seront au coeur des méthodes composées que nous verrons
ensuite. On va supposer que a = −1 et b = 1, on fera attention au fait que [a, b] est donc un intervalle
de longueur b − a = 2. On peut toujours se ramener à ce choix en posant
a + b b − a g(t) := f
+
t , t ∈ [−1, 1] .
2
2
Dans la suite, on notera systématiquement g (ou gi , cf. plus loin) la fonction ramenée à l’intervalle
de référence [−1, 1].
La méthode que nous venons de voir s’appelle méthode des trapèzes puisqu’elle consiste à remplacer l’aire sous la courbe de g par un trapèze sensé l’approcher. On notera
Z +1
g(t) dt ' g(1) − g(−1)
−1
la formule associée, le symbole ' signifiant qu’on associe à l’intégrale la formule élémentaire à droite
de l’égalité, facile à calculer. Pour le moment, cela ne présage pas de la qualité de l’approximation
que l’on tente de faire (et heureusement !).
D’autre méthodes élémentaires, plus simples ou plus élaborées peuvent être mises en place sur
le même principe de l’interpolation : ce sont les méthodes des rectangles et de Simpson.
{méthode des rectangles} : l’idée est d’interpoler g par un polynôme de degré 0, ce qui signifie
qu’on remplace g par une fonction c constante. Reste à choisir la valeur de cette constante.
(i ) rectangles à gauche : c := f (−1) ;
(ii ) rectangles à droite : c := f (1) ;
(iii ) rectangles centrés : c = f (0).
Cela conduit aux formules
Z
1
g(t) dt ' 2g(−1) ou 2g(1) ou 2g(0) .
−1
28
On pourrait aussi prendre n’importe quel point dans l’intervalle comme référence au lieu des extrémités ou du centre, évidemment.
{méthode des trapèzes} : déja vue, on remplace g par un polynôme d’interpolation de degré 1,
passant aux extrémités. La formule donne
Z 1
g(t) dt ' g(−1) + g(1) .
−1
Là aussi, on pourrait choisir d’autres points d’interpolation que les deux extrémités.
{méthode de Simpson} : on remplace g par un polynôme d’interpolation de degré 2, c’est-à-dire
qu’on remplace g par une parabole coïncidant avec g aux point −1, 0, 1. Le calcul montre alors qu’on
aboutit à la formule
Z 1
1
4
1
g(t) dt ' g(−1) + g(0) + g(1) .
3
3
3
−1
4.3
Intégration composée
Nous avons vu qu’ajouter de nombreux points d’interpolation ne permet pas nécessairement de
mieux approcher une fonction si elle a de fortes oscillations sur l’intervalle donné. Une approche
plus astucieuse consiste donc à découper [a, b] en plusieurs “petits” intervalles, sur chacun desquels
la fonction n’oscille pas beaucoup, puis faire une interpolation assez basique sur chacun de ces petits
intervalles.
L’approche que nous allons développer ici est donc la suivante :
(i ) Choisir une subdivision a = x0 < x1 < x2 < · · · < xN = b ;
Z xi+1
f (t) dt ;
(ii ) Utiliser une formule d’intégration élémentaire pour
Z b
xi
(iii ) Recomposer l’intégrale
f (t) dt par la règle de Chasles.
a
Cela nous laisse évidemment beaucoup de choix, d’une part pour les (xi ), d’autre part pour la
formule que nous souhaitons utiliser sur chaque intervalle [xi , xi+1 ]. Mais pour cette année nous
allons nous restreindre à une version basique de cette approche.
Subdivisions — on supposera ici que la subdivision (xi ) est uniforme, i.e. , que l’écart xi+1 − xi
est constant, égal à h := (b − a)/N où N est le nombre de sous-intervalles. On fera attention au fait
que l’on a (N + 1) points (xi )i=0..N .
Formules d’intégration — on va prendre la même formule d’intégration élémentaire pour tous
les intervalles [xi , xi+1 ], qu’il s’agisse d’une méthode des rectangles, des trapèzes, ou de Simpson.
On renvoit au cours de L3 pour d’autres méthodes plus élaborées. Toutes les formules élémentaires
29
que nous avons vues précédemment peuvent s’écrire sous la forme suivante :
Z
+1
g(s) ds '
−1
K
X
ωj g(yj ) ,
j=0
où K = 0, 1, 2, les yj sont soit −1, 0 ou 1 et les ωj sont les coefficients que nous avons obtenu
pour chacune de ces méthodes. Par exemple, pour la méthode des rectangles à droite, on a K = 0,
y0 = +1 et ω0 = 2.
{exercice} : Pour chaque méthode vue dans la section précédente, écrire les différentes variables
K, yj , ωj correspondantes.
Changement de Variables — pour estimer l’intégrale de f sur l’intervalle [xi , xi+1 ], nous allons
nous ramener systématiquement à l’intervalle de référence [−1, +1], par un changement de variables :
h
xi + xi+1
gi (s) = f
s+
, s ∈ [−1, +1] .
2
2
Evidemment, la variable t = (h/2)s + (xi + xi+1 )/2 parcourt [xi , xi+1 ] lorsque s décrit [−1, +1].
Dans la suite, on notera g = gi pour simplifier lorsqu’il n’y aura pas de confusion possible, mais il
faut se souvenir que l’on fait un changement de variables distinct pour chacun des sous-intervalles
[xi , xi+1 ].
Le changement de variables dans l’intégrale donne alors
Z xi+1
Z
h +1
f (t) dt =
gi (s) ds .
2 −1
xi
Formule de Newton-Cotes — en combinant tout ce que nous venons de dire, nous obtenons
la formule d’intégration composée suivante :
Z
a
b
N −1 Z
N −1 K
h X +1
h XX
f (t) dt =
gi (s) ds '
ωj gi (yj )
2
2
−1
i=0
h
'
2
N
−1 X
K
X
i=0 j=0
i=0 j=0
h
xi + xi+1
ωj f
yj +
2
2
.
Exemples Fondamentaux — voici ce que nous obtenons dans les trois cas de formules élémentaires que nous avons vu précédemment :
Z b
N
−1 X
xi + xi+1
Rectangles centrés :
f (t) dt ' h
f
.
2
a
i=0
Z
Trapèzes :
a
b
h
f (t) dt '
2
N
−1 X
f (xi ) + f (xi+1 ) .
i=0
30
Z
Simpson :
a
4.4
b
N −1 hX 1
4 xi + xi+1 1
f (t) dt '
f (xi ) + f
+ f (xi+1 ) .
2
3
3
2
3
i=0
Estimation de l’erreur
Le but de cette sous-section est maintenant de justifier le fait d’approcher l’intégrale par une
formule de type Newton-Cotes. Pour cela, on va donner une estimation de l’erreur que l’on commet en replaçant l’intégrale par une somme finie. Là encore, on renvoit au cours de L3 pour voir
des techniques plus avancées et plus générales, nous contentant ici d’estimer l’erreur dans le cas
particulier de la méthode des trapèzes. Le cas des rectangles et de Simpson est laissé en exercice.
Erreur d’interpolation — on va d’abord donner une estimation de l’erreur commise sur l’intervalle de référence [−1, +1], puis on l’exportera via le changement de variables. Rappelons la formule
élémentaire des trapèzes :
Z +1
g(s) ds ' g(−1) + g(+1) =: L(g) .
−1
Notons que cette formule est exacte (i.e. , il n’y a aucune erreur) lorsque g est un polynôme de
degré 1. En effet, cette formule est obtenue en remplaçant g par un polynôme d’interpolation de
degré 1, qui n’est autre que g elle-même dans ce cas. Dans le cas général, pour estimer l’erreur entre
les intégrales de g et de P , nous allons donc en fait estimer l’écart entre g et P sur [−1, +1]. On
note π(s) := (s − 1)(s + 1), qui est un polynôme de degré 2 s’annulant en s = ±1.
Théorème 4.1. Soit g une fonction de classe C 2 sur [−1, +1] et P son polynôme d’interpolation
linéaire. Alors pour tout x ∈ [−1, +1], il existe ξx ∈ [−1, +1] tel que
g(x) − P (x) =
π(x) 00
g (ξx ) .
2
preuve — On remarque tout d’abord que si x = −1 ou x = +1, le résultat est évident. On va
donc fixer x dans l’intervalle ] − 1, +1[. On considère la fonction
ψ(s) := g(s) − P (s) − Aπ(s) ,
où A est une constante que l’on va déterminer dans un instant. On remarque qu’au points d’interpolation s = −1 et s = +1,
ψ(−1) = ψ(+1) = 0 .
Maintenant on choisit A de telle sorte que ψ(x) = 0, et pour cela il suffit de choisir
A :=
g(x) − P (x)
.
π(x)
On se retrouve alors avec trois racines : ψ(−1) = ψ(x) = ψ(+1) = 0 .
On applique alors le Théorème de Rolle, qui nous apprend qu’il existe au moins deux racines,
t1 ∈] − 1, x[ et t2 ∈]x, +1[ de la dérivée ψ 0 . On ré-applique Rolle une seconde fois et on trouve au
moins un point ξ ∈]t1 , t2 [ tel que ψ 00 (ξ) = 0. On note ξx ce point car il dépend a priori de x.
31
On calcule alors ψ 00 de la façon suivante :
ψ 00 (s) = g 00 (s) − P 00 (s) − Aπ 00 (s) = g 00 (s) − 2A
puisque P est un polynôme de degré 1 et π 00 = 2. En particulier, en prenant s = ξx on voit que
A = g 00 (ξx )/2, d’où
g(x) − P (x)
1
A=
= g 00 (ξx ) .
π(x)
2
La formule d’erreur souhaitée en découle.
{Remarque} : ce résultat donne une vision plus quantitative de ce que l’on disait sur les oscillations : on voit que l’erreur commise quand on remplace g par son polynôme d’interpolation est de
l’ordre de la dérivée seconde de g. Si g a de fortes oscillations, g 00 est grande (penser à cos(nx) par
exemple), et donc l’erreur est grande. Au contraire, si g est assez “plate”, alors l’erreur commise est
petite.
{exercice} : Démontrer des formules d’erreur similaires pour la méthode des rectangles et de Simpson. Pour les rectangles centrés, on prendra π(x) = x et π(x) = x(x − 1)(x + 1) pour Simpson.
Erreur sur la formule d’intégration élémentaire — Nous pouvons maintenant retourner
à notre estimation d’erreur des intégrales :
Théorème 4.2. Soit g une fonction de classe C 2 sur [−1, +1]. Alors pour la méthode des trapèzes
on a l’estimation suivante :
Z +1
g(s) ds − L(g) ≤ kg 00 k∞ .
−1
Preuve — on note P le polynôme d’interpolation linéaire de g aux points −1 et +1. Alors
Z +1
Z +1
Z +1
Z +1
g(s) − P (s) ds .
g(s) ds − L(g) = g(s) ds −
P (s) ds ≤
−1
−1
−1
−1
En utilisant le résultat d’erreur sur l’interpolation, cela entraîne
Z +1
Z
kg 00 k∞ +1 π(s) ds ≤ kg 00 k∞ .
g(s) ds − L(g) ≤
2
−1
−1
{Remarque} : on voit ici aussi que ce sont les oscillations de la fonction g qui controllent l’erreur
commise dans la formule d’intégration.
Erreur sur la formule composée — nous avons fait le plus gros du travail, il reste juste à
ajouter les erreurs commises sur chaque intervalle [xi , xi+1 ] : on note
Z xi+1
Qi := f (t) dt − h f (xi ) + f (xi+1 ) ,
xi
32
l’erreur totale étant Q =
PN −1
Qi . Si on réécrit en terme de la fonction g = gi , on obtient
Z
h
h +1
Qi = gi (s) ds − L(gi ) ≤ k(gi )00 k∞ .
2 −1
2
i=0
Le point fondamental ici est que la dérivée seconde de gi fait sortir (h/2)2 fois la norme infinie de
f 00 , ce qui donne donc
3
h
Qi ≤
kf 00 k∞ .
2
En sommant toutes les erreurs et en utilisant le fait que N h = (b − a), on obtient au final
b − a h 2 00
Q≤
kf k∞ .
2
2
Théorème 4.3. Soit f une fonction de classe C 2 sur [a, b], alors l’erreur commise pour la méthode
des trapèzes composées est majorée par
Q ≤ Ch2 ,
où C = C(f, a, b).
{Remarque} : on voit clairement que pour une fonction f donnée, cette erreur est d’autant plus
petite que le pas de la subdivision est petit. La convergence est en h2 , on a une méthode d’ordre 2.
{exercice} : Reprendre ces estimation et démontrer que la méthode des rectangles à gauche est
d’ordre 1, que la méthode de Simpson est d’ordre 3.
33

Documents pareils