![]() ![]() @ Programme en ligne |
Il s'agit de calculer une valeur approchée de l'intégrale, sur un intervalle [a,b], d'une fonction positive et continue f, conservant la même concavité sur l'intervalle [a,b]. Poncelet utilisa la moyenne arithmétique basée sur une utilisation de la méthode des trapèzes par excès et par défaut.
Étude :
On subdivise l'intervalle [a,b] en n sous-intervalles [xi,xi+1] avec i variant de 0 à n : xo = a < x1< x2 < ... < xn = b
Une première approximation J de I est donnée par la somme des aires des trapèzes (en jaune ci-contre) :
Sur le schéma, f est concave et la méthode des trapèzes fournit une approximation par défaut. Une fonction convexe fournirait une approximation par excès.
Méthode des tangentes :
Considérons maintenant le point mi centre de l'intervalle [xi , xi+1] dont l'image est zi = f(mi). Traçons la tangente (T) à la courbe en ce point. L'aire du trapèze défini par (T), les droites (x = xi), (x = xi+1) et l'axe des abscisses fournit une approximation de l'intégrale I cherchée :
par excès si f est concave;
par défaut si f est convexe.
➔ Nous pourrions mesurer l'aire de ce trapèze en calculant le coefficient directeur de (T) qui est donné par le nombre dérivé f '(mi) de f au point mi en choisissant le pas h = xi+1 - xi de la subdivision suffisamment petit. On aurait alors sensiblement :
C'est dire que (T) est sensiblement parallèle au segment en pointillé représenté ci-dessous.
Mais, en fait, nous n'avons pas besoin de la valeur exacte ou approchée de f '(mi) car l'aire Ai du trapèze en question ne dépend que de yi, yi+1 et zi : on a tout simplement Ai = zi × h.
Il suit qu'une approximation de I est donnée par la formule suivante, dite méthode des tangentes :
La formule de Poncelet consiste alors à faire la moyenne arithmétique des deux approximations, soit :
Programmation de la méthode en JavaScript : |
Pour plus de clarté, le programme calcule indépendamment les approximations par la méthode des trapèzes (jtrap) et par la méthode des tangentes (jtg).
➔ Pour tester ce programme vous devez entrer votre fonction en utilisant une syntaxe comprise par le langage JavaScript. L'instruction with (Math), placée en début de procédure, évite à l'utilisateur de préciser Math devant chaque fonction mathématique utilisée. Les opérations et fonctions usuelles sont les suivantes :
<SCRIPT
LANGUAGE=JavaScript> var fonc var pi=3.141592653589793, e=2.7182818284590452; function pon() {with (Math) { fonc="1/x"; a=1 ; b=2 ; n="100"; fonc=prompt("Entrez votre fonction :",fonc) a=eval(prompt("Entrez a :",a)); b=eval(prompt("Entrez b :",b)); n=prompt("Nombre de points n pair = ",n); if (n==null) {return} else {n =eval(n)}; h=(b-a)/n; j=f(a)/2+f(b)/2; // ---------- méthode des trapèzes --------- for(i=1; i<=n-1; i++) {j = j + f(a+i*h)} jtrap=j*h; j=0 ; a1= a+h/2; // -------------- méthode des tangentes --------- for(i=0;i<=n-1;i++) {j = j + f(a1+i*h)} jtg=j*h ; jp=(jtrap+jtg)/2; err = abs(jtrap-jtg)/2 alert("Integrale trapezes = "+ jtrap+"\n"+"Integrale tangentes = "+ jtg+"Integrale Poncelet = "+ jp+ "\n"+"Erreur maximale = "+err)} } function f(x) |
Par défaut, le programme calcule une approximation de ln 2 en calculant l'intégrale de f(x) = 1/x sur l'intervalle [1;2] avec n = 100. On obtient J = 0,69314874..., soit une valeur approchée de ln 2 = 0,693147181... avec une erreur inférieure à 2.10-6.
En conclusion :
La méthode de Simpson, quoique généralement très satisfaisante, ne fournit pas un calcul simple de l'erreur. La méthode de Poncelet a donc l'immense avantage d'être simple et de fournir une évaluation également simple de l'erreur commise !
Application de la méthode à la fonction de répartition de la loi normale : » Autres méthodes : »