integration python [répertoire]
- référence des algorithmes de calcul d'intégrales : I = ∫ab f(x) dx :
Analyse numérique
avec les programmes en python, et un majorant de l'erreur de la méthode.
- 3 méthodes : 3 modes d'approximation de la courbe à intégrer
- on découpe l'intervalle d'intégration en n intervalles constants (méthode à pas constant)
h = (b − a) / n
n intervalles élémentaires : [αi, βi] = [a + ih, a + (i+1)h]
sur lesquels on intègre rigoureusement un polynôme approximant f(x)
- rectangles : f(x) est remplacée par une fonction constante f(αi)
- sur l'intervalle [αi, βi] : approximation f(x) ≈ f(αi) ∀ x
I = ∫αiβi f(x) dx ≈ h f(αi)
- trapèzes : f(x) est remplacée par une fonction linéaire passant par les extrêmités :
(αi, f(αi)) et (βi, f(βi))
ce qui revient à une fonction constante moyenne [f(αi) + f(βi)] / 2
- sur l'intervalle [αi, βi] :
coefficient directeur p = [f(βi) − f(αi)] / h
approximation f(x) ≈ f(αi) + p (x − αi)
I = ∫αiβi f(x) dx ≈ h [f(αi) + f(βi)] / 2
- paraboles : f(x) est remplacée par un polynôme du second degré
- sur l'intervalle [αi, βi] : approximation f(x) ≈ a x2 + b x + c
en posant : x = (αi + βi) / 2
ainsi que f(αi) = y0 ; f(x) = y1 ; f(βi) = y2
a = 2 (y0 − 2 y1 + y2) / h2
b = −((h + 4 x) y0 − 4 x (2 y1 − y2) − h y2) / h2
c = −(2 x2 (2 y1 − y2) − h2 y1 + h x y2 − (h x + 2 x2) y0) / h2
I = ∫αiβi f(x) dx ≈ (y0 + 4 y1 + y2) h / 6
- précision
- précision machine : ou plutôt précision mémoire.
les nombres (en double précision) sont stockés sur 64 bits au formet IEEE 64 :
bits |
1 bit |
11 bits |
52 bits |
signe |
exposant |
mantisse |
domaine |
± |
[−1022 à 1023] |
[1e−16 à 0.5] |
précision relative : 52 bits de mantisse + 1 bit implicite (le premier bit étant toujours 1)
la précision relative du dernier bit est : 1 / 253 ≈ 1 / (8 1015 ) ≈ 10−16
- précision des algorithmes : (d'après le lien ci-dessus)
- rectangles : erreur < | M1 (b−a)2 | / (2 n) avec M1 = majorant de f ' sur [a,b]
- trapèzes : erreur < | M2 (b−a)3 | / (12 n2) avec M2 = majorant de f '' sur [a,b]
- Simpson : erreur < | M4 (b−a)5 | / (180 n4) avec M4 = majorant de f(4) sur [a,b]
- temps calcul : le poste principal de temps est le nombre d'appels à la fonction à intégrer (qui peut être très complexe)
- rectangles : nombre d'appels à f = n
- trapèzes : nombre d'appels à f = n + 1
la méthode des trapèzes a le même coût que la méthode des rectangles en étant beaucoup plus précise.
- Simpson : nombre d'appels à f = 2 n + 1
retour au menu : prepa sup