Application numérique : la méthode des trapèzes
Leçon optionnelle — Illustration concrète de l'intégration numérique
Contexte
Dans la leçon « Pourquoi certaines intégrales n'ont pas de solution analytique », nous avons vu que l'intégrale
n'admet aucune primitive en forme close. C'est une intégrale elliptique, prouvablement non élémentaire par le théorème de Liouville.
Pourtant, cette intégrale existe bel et bien — c'est l'aire sous une courbe parfaitement définie. Comment la calculer? C'est ici qu'intervient l'analyse numérique.
La méthode des trapèzes
Idée géométrique
La méthode des trapèzes approche l'aire sous la courbe par une somme d'aires de trapèzes. Sur chaque sous-intervalle, on relie les deux points de la courbe par un segment de droite.
Formule
On découpe l'intervalle en sous-intervalles de largeur . Les points de subdivision sont :
L'approximation de l'intégrale est alors :
Ou, sous forme compacte :
Pourquoi les coefficients 1, 2, 2, ..., 2, 1 ?
Chaque trapèze a pour aire . En sommant tous les trapèzes, les points intérieurs apparaissent deux fois (une fois comme extrémité droite d'un trapèze, une fois comme extrémité gauche du suivant), d'où le coefficient 2.
Implémentation
import numpy as np
def f(x):
"""Notre intégrale elliptique."""
return np.sqrt(1 + np.cos(x)**2)
def trapezes(a, b, n):
"""
Méthode des trapèzes avec n subdivisions.
Paramètres :
a, b : bornes de l'intervalle
n : nombre de subdivisions
Retourne :
Approximation de l'intégrale
"""
h = (b - a) / n
x = np.linspace(a, b, n + 1)
y = f(x)
# Formule des trapèzes
return h * (0.5 * y[0] + np.sum(y[1:-1]) + 0.5 * y[-1])
# Calcul pour différentes valeurs de n
print("Méthode des trapèzes pour J = ∫₀^π √(1 + cos²(x)) dx")
print("-" * 50)
for n in [2, 4, 6, 8, 10, 12, 16]:
I = trapezes(0, np.pi, n)
print(f"n = {n:3d} : I ≈ {I:.10f}")Résultats
| n (subdivisions) | Approximation | Erreur absolue |
|---|---|---|
| 2 | 3.7922377959 | 2.8 × 10⁻² |
| 4 | 3.8199436432 | 2.5 × 10⁻⁴ |
| 6 | 3.8201938675 | 3.9 × 10⁻⁶ |
| 8 | 3.8201977154 | 7.4 × 10⁻⁸ |
| 10 | 3.8201977875 | 1.5 × 10⁻⁹ |
| 12 | 3.8201977890 | 3.4 × 10⁻¹¹ |
| 16 | 3.8201977890 | 1.9 × 10⁻¹⁴ |
Ajouter deux subdivisions divise l'erreur par un facteur qui reste compris entre 40 et 65 tout au long du tableau. Au-delà de , l'erreur atteint la précision machine et cesse de décroître : ce n'est plus la méthode qu'on observe, mais la limite du calcul en double précision.
Analyse de la convergence
Ordre de convergence
On observe une convergence bien plus rapide que : dès l'erreur vaut environ , et à partir de on atteint la précision machine.
C'est un cas particulièrement favorable : est analytique et -périodique, et couvre exactement une période. Toutes les dérivées coïncident aux deux bornes, les termes de bord de la formule d'Euler-Maclaurin s'annulent, et la méthode des trapèzes converge alors plus vite que n'importe quelle puissance de .
Borne théorique de l'erreur
Pour une fonction deux fois dérivable, l'erreur de la méthode des trapèzes est bornée par :
Dans le cas général, cette borne garantit une convergence en : doubler divise l'erreur au moins par 4. Ce n'est qu'une majoration, et l'exemple ci-dessus fait bien mieux.
Le cas général, sur la même fonction
Pour voir le annoncé, il suffit de garder la même fonction et de changer l'intervalle. Sur , qui ne correspond à aucune période, les termes de bord ne s'annulent plus :
| n | Approximation | Erreur absolue | Rapport |
|---|---|---|---|
| 4 | 1.3093491422 | 2.1 × 10⁻³ | — |
| 8 | 1.3109210442 | 5.2 × 10⁻⁴ | 4.01 |
| 16 | 1.3113122518 | 1.3 × 10⁻⁴ | 4.00 |
| 32 | 1.3114099439 | 3.3 × 10⁻⁵ | 4.00 |
| 64 | 1.3114343601 | 8.1 × 10⁻⁶ | 4.00 |
La valeur exacte vaut ici , et le rapport se tient sur 4.00 à chaque doublement : c'est exactement le comportement d'ordre 2. Deux intervalles, une seule fonction, deux régimes de convergence — ce n'est donc pas l'intégrande qui décide, mais la façon dont ses dérivées se comportent aux bornes.
La formule d'Euler-Maclaurin fait apparaître des termes de bord en , puis en , et ainsi de suite. Sur , les dérivées impaires prennent la même valeur aux deux bornes : toutes ces différences s'annulent, et il ne reste aucun terme, à aucun ordre fini. Sur , mais : le premier terme survit et impose son .
Le cas général reste donc celui-ci : la méthode des trapèzes est d'ordre 2. La convergence spectrale observée plus haut tient à la périodicité de l'exemple, ce n'est pas la règle.
Ce que montre cet exemple
Message clé
Ce que les mathématiques ne peuvent exprimer en forme close, l'analyse numérique le calcule avec une précision arbitraire.
La valeur est aussi « vraie » que ou — on peut la calculer avec autant de décimales qu'on veut.
Lien avec les fonctions spéciales
Cette valeur correspond exactement à :
où est l'intégrale elliptique complète de seconde espèce :
Les tables de fonctions spéciales (comme le Handbook of Mathematical Functions d'Abramowitz et Stegun) donnent .
Pour aller plus loin
La méthode des trapèzes est la plus simple des méthodes d'intégration numérique, mais pas la plus efficace. Dans les chapitres suivants, nous verrons :
- La méthode de Simpson (convergence en )
- Les méthodes de Gauss (précision optimale pour un nombre donné d'évaluations)
- Les méthodes adaptatives (qui ajustent automatiquement le pas)
À retenir
- La méthode des trapèzes approxime l'intégrale par une somme de trapèzes
- Elle converge en dans le cas général : doubler divise l'erreur par 4
- Elle permet de calculer numériquement des intégrales sans primitive élémentaire