Bases de Python (bases-python.html) Présentation de NumPy (bases-numpy.html) Tr

Bases de Python (bases-python.html) Présentation de NumPy (bases-numpy.html) Tracé de courbes (introduction-courbes.html) Tableaux et calcul matriciel (tableaux-numpy.html) Visualisation et animation (visualisation.html) Classes et objets (classes-et-objets.html) Fiches pratiques (fiches-pratiques.html) Mettre en forme des chaînes de caractères en Python (print-format.html) Dérivée d’une fonction en Python (derivee-fonction.html) Intégration numérique (integration-numerique.html) Méthodes des rectangles et des trapèzes Méthode des rectangles Méthode des trapèzes Intégration par la méthode de Simpson (integration-simpson.html) Transformation de Fourier (fft-fourier.html) Introduction à Qt5 et PyQt5 (interface-graphique.html) Annexes (annexes.html) Bibliographie (bibliographie.html) Méthodes des rectangles et des trapèzes Il existe de nombreuses méthodes pour réaliser une intégration numérique. Nous allons considérer ici quelques méthodes simples. Ceux qui souhaiteraient aller plus loin peuvent consulter par exemple Pratique de la simulation numérique de Bijan Mohammadi et Jacques Hervé Saïac, Dunod (2003). Méthode des rectangles Dans cette méthode, on calcule l’intégrale numérique en réalisant une somme de surfaces de rectangles. Le domaine d’intégration est découpé en intervalles et on fait comme si la fonction restait constante sur chaque intervalle. Sur chaque intervalle, on réalise ainsi l’approximation suivante : où est une abscisse appartenant à l’intervalle limité par et . ∫ b a f(x)dx ≈(b −a)f(α) α a b Nous nous limiterons ici aux cas où ou , ce qui signifie que pour chaque intervalle nous considérons comme constante la valeur prise par la fonction à l’extrémité gauche ou droite de l’intervalle. Comme exemple, nous allons réaliser un programme d’intégration pour et nous visualiserons les rectangles. Pour tracer un rectangle ABCD (voir figure ci-dessous), il suffit de faire un plot avec les coordonnées de A, B, C, D et A. On termine par A pour fermer le tracé. Programme # integration numerique par la methode des rectangles avec alpha = a import numpy as np import matplotlib.pyplot as plt xmin = 0 xmax = 3*np.pi/2 nbx = 20 nbi = nbx - 1 # nombre d'intervalles x = np.linspace(xmin, xmax, nbx) y = np.cos(x) plt.plot(x,y,"bo-") integrale = 0 for i in range(nbi): integrale = integrale + y[i]*(x[i+1]-x[i]) # dessin du rectangle x_rect = [x[i], x[i], x[i+1], x[i+1], x[i]] # abscisses des sommets y_rect = [0 , y[i], y[i] , 0 , 0 ] # ordonnees des sommets plt.plot(x_rect, y_rect,"r") print("integrale =", integrale) plt.show() (Source code (./integration/integration_rectangle_2016.py)) α = a b α = a Exercice Faire de même pour . Méthode des trapèzes Comme son nom l’indique, cette méthode d’intégration utilise une somme de surfaces de trapèzes. Sur chaque intervalle, on réalise alors l’approximation suivante : Justification de la formule Pour calculer la surface du trapèze ABED, on fait la somme des aires du rectangle ABCD et du triangle rectangle BEC. α = b ∫ b a f(x)dx ≈b −a 2 [f(a) + f(b)] Haut de page Licence CC BY-NC-SA 4.0 (https://creativecommons.org/licenses/by-nc-sa/4.0/deed.fr) 2021, David Cassagne. Créé le 15 oct 2012. Mis à jour le 11 sept. 2021. Created using Sphinx (http://sphinx-doc.org/) 4.0.1. Exercice Faire un programme similaire au précédent avec cette fois la méthode des trapèzes en utilisant les mêmes valeurs numériques pour la fonction. Réaliser de même la visualisation des trapèzes. surface du rectangle ABCD = AD × AB = (b −a)f(a) surface du triangle rectangle BEC = BC × CE 2 = (b −a) [f(b) −f(a)] 2 surface du trapèze ABED = b −a 2 [2f(a) + f(b) −f(a)] = b −a 2 [f(a) + f(b)] uploads/Geographie/ methodes-des-rectangles-et-des-trapezes-cours-python.pdf

  • 99
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager