Open Source Your Knowledge, Become a Contributor

Technology knowledge has to be shared and made accessible for free. Join the movement.

Create Content

Calcul approché d'aires par la méthode des trapèzes.

Difficulté : Moyenne

Présentation

Le but de cette fiche est de présenter la méthode des trapèzes pour calculer l'aire sous une courbe représentative d'une fonction. Cette méthode est très proche de la méthode des rectangles mais donne de meilleurs approximations. Pour simplifier la présentation, on supposera ici que nos fonctions sont toutes positives sur l'intervalle sur lequel on les considère.

Définissons d'abord ce qu'est l'aire sous la courbe représentative d'une fonction sur un intervalle [a,b] : C'est tout simplement l'aire comprise entre la courbe représentative, l'axe des abscisses et les droites x=a et x=b.

Illustration

Présentons à présent la méthode des trapèzes pour calculer l'aire sous la courbe représentative d'une fonction f sur un intervalle [a,b].
L'idée est d'approcher l'aire sous la courbe par des trapèzes dont l'aire est facilement calculables comme sur la figure ci-dessous (les bases des trapèzes sont verticales). Illustration Pour cela, on procède comme suit :

  1. On commence par choisir le nombre n de trapèzes qu'on veut sous la courbe . Plus le nombre sera grand, plus la surface formée par les trapèzes sera proche de l'aire sous la courbe.
  2. On répartit sur [a,b] n+1 points de la façon équitable suivante : x0=a et xn+1=xn+ban.
  3. On construit le premier trapèze de largeur ban entre x0 et x1 sur l'axe des abscisses et dont les bases mesurent f(x0) et f(x1). Son aire est donc de (base1+base2)×hauteur2=(f(x0)+f(x1))×ban2
  4. On contruit le deuxième trapèze juste à coté de même largeur ban mais qui cette fois ci est entre x1 et x2 sur l'axe des abscisses et dont les bases mesurent f(x1) et f(x2). Son aire est donc de (base1+base2)×hauteur2=(f(x1)+f(x2))×ban2.
  5. On continue ainsi jusqu'à arriver au dernier trapèze qui finira en b donc commencera à xn1. Son aire sera (f(xn1)+f(xn))×ban2

Finalement, l'aire de tous ces trapèzes ainsi construits sera : ban(a2+f(x1)++f(xn1)+b2).

Dans la fenêtre ci-dessous, vous avez juste à appuyer sur Run pour voir une illustration. Vous pouvez modifier les paramètres pour voir les conséquences.

Illustration de la méthode des trapèzes
1
2
3
4
5
6
7
8
9
10
# Paramètres modifiables.
#Attention la fonction doit rester entre guillemets
#et être un calcul compréhensible par Python (par exemple ** pour les puissances)
#Les fonctions cos, sin, tan, exp ln etc. du module math sont utilisables sans rien devant.
#Vous pouvez par exemple tester avec f="x*(1-x)*(sin(200*x*(1-x)))**2" entre 0 et 1 pour voir que si on prend un n trop petit la méthode n'est pas très efficace
f="2*x**3-3*x**2+2"
a=-0.5
b=1.5
n=6
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

A vous de jouer

Créez un programme qui prend en entrée f, a, b et n et affiche (avec return) l'aire calculée par la méthode des rapèzes.

Entrée : Une fonction f, les bornes de l'intervalle a et b et le nombre de subdivisions n.

Sortie : L'aire calculée avec la méthode des trapèzes et affichée avec return. L'erreur admise pour passer les tests est de 0.0001 par rapport à la valeur exacte.

Méthode des trapèzes
1
2
3
4
5
6
def mon_programme(f,a,b,n):
#Ne pas toucher ce qui précède
#Les valeurs pour les variables en entrée seront automatiquement données
#Ecrire ci-dessous en n'oubliant pas d'indenter
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Open Source Your Knowledge: become a Contributor and help others learn. Create New Content