Intégration de Romberg
Objectifs d'apprentissage
À la fin de cette leçon, vous serez en mesure de :
- Expliquer comment Romberg combine le trapèze avec Richardson
- Construire le tableau de Romberg étape par étape
- Comprendre le lien entre Romberg et Simpson
- Appliquer la méthode sur un exemple numérique
Prérequis
- Trapèze composite
- Extrapolation de Richardson
- Formule d'Euler-Maclaurin (intuition)
Motivation
Le trapèze composite a une erreur en . Pour améliorer la précision, on peut :
- Réduire h → plus de calculs, risque d'erreurs d'arrondi
- Utiliser Simpson → erreur en , mais plus complexe
- Appliquer Richardson → améliorer l'ordre sans recalculer !
La méthode de Romberg choisit l'option 3 : elle part du trapèze (simple à programmer) et applique l'extrapolation de Richardson de manière itérative.
Formule d'Euler-Maclaurin (intuition)
La clé de Romberg est que l'erreur du trapèze composite a une structure très particulière :
où est l'approximation du trapèze avec pas .
Observation cruciale
L'erreur ne contient que des puissances paires de . Cette propriété permet à Richardson de gagner deux ordres à chaque étape, pas un seul.
Construction du tableau de Romberg
Étape 1 : Calcul des trapèzes
On calcule le trapèze composite pour des pas successivement divisés par 2 :
- : trapèze avec intervalle (pas )
- : trapèze avec intervalles (pas )
- : trapèze avec intervalles (pas )
- Et ainsi de suite...
Étape 2 : Première extrapolation
On applique Richardson pour éliminer le terme en . Puisque l'erreur est en , avec :
Cette nouvelle approximation est d'ordre .
Étape 3 : Deuxième extrapolation
On applique Richardson sur les pour éliminer le terme en :
Cette approximation est d'ordre .
Formule générale
Récurrence de Romberg
où est l'approximation de niveau avec intervalles de base.
Lien avec Simpson
Que donne la première extrapolation de Richardson sur le trapèze ?
En développant avec les formules du trapèze :
Après simplification :
Romberg niveau 2 = Simpson 1/3
La première étape d'extrapolation de Romberg redonne exactement la formule de Simpson 1/3 ! Romberg généralise simplement ce processus.
Exemple numérique complet
Calculons à partir des données suivantes :
| x | f(x) |
|---|---|
| 0.0 | 0.000 |
| 0.2 | 0.199 |
| 0.4 | 0.389 |
| 0.6 | 0.565 |
| 0.8 | 0.717 |
Étape 1 : Trapèzes composites (colonne )
n = 4, h = 0.2 :
n = 2, h = 0.4 :
n = 1, h = 0.8 :
Étape 2 : Première extrapolation (colonne )
Étape 3 : Deuxième extrapolation (colonne )
Tableau de Romberg final
| n | O(h²) | O(h⁴) | O(h⁶) |
|---|---|---|---|
| 4 | 0.3023 | ||
| 2 | 0.299 | 0.3034 | |
| 1 | 0.2868 | 0.3031 | 0.3034 |
Lecture du tableau
- La première colonne contient les trapèzes (précision )
- La deuxième colonne (équivalente à Simpson) a une précision
- La troisième colonne atteint
- La meilleure approximation est dans le coin inférieur droit
Algorithme de Romberg
def romberg(f, a, b, max_iter=10, tol=1e-10):
"""
Intégration de Romberg.
Paramètres:
f: fonction à intégrer
a, b: bornes d'intégration
max_iter: nombre maximal d'itérations
tol: tolérance pour le critère d'arrêt
"""
R = [[0] * (max_iter + 1) for _ in range(max_iter + 1)]
# Première colonne: trapèzes composites
h = b - a
R[0][0] = h * (f(a) + f(b)) / 2
for i in range(1, max_iter + 1):
h /= 2
# Trapèze avec 2^i intervalles
somme = sum(f(a + (2*k - 1) * h) for k in range(1, 2**(i-1) + 1))
R[i][0] = R[i-1][0] / 2 + h * somme
# Extrapolations de Richardson
for j in range(1, i + 1):
R[i][j] = R[i][j-1] + (R[i][j-1] - R[i-1][j-1]) / (4**j - 1)
# Critère d'arrêt
if i > 0 and abs(R[i][i] - R[i-1][i-1]) < tol:
return R[i][i]
return R[max_iter][max_iter]Avantages de Romberg
- Simplicité : Ne nécessite que le trapèze (très simple à programmer)
- Efficacité : Réutilise les calculs précédents (pas de gaspillage)
- Précision : Atteint rapidement des ordres élevés ()
- Adaptativité : On peut s'arrêter quand la précision souhaitée est atteinte
Résumé
- La méthode de Romberg combine le trapèze composite avec l'extrapolation de Richardson
- L'erreur du trapèze ne contient que des puissances paires de , permettant de gagner 2 ordres par extrapolation
- La formule de récurrence est :
- La première extrapolation redonne Simpson 1/3
- Le tableau de Romberg converge rapidement vers la valeur exacte
Pour aller plus loin
Dans la prochaine leçon, nous étudierons les quadratures gaussiennes, une approche différente qui optimise le choix des points d'évaluation (au lieu de les prendre équidistants).