Modules et librairies pour les sciences

En Python, des librairies sont spécifiquement développées pour le calcul scientifique.

Pour commencer, cette section résume les fonctionnalités des différentes librairies les plus rencontrées. Ces dernières sont présentées plus en détail dans la suite de cette documentation.

Math

Le module math fait partie de la librairie standard de Python.

Fonction/constante

Description

math.sqrt

Fonction racine carrée

math.sin

Fonction sinus (angle en radian)

math.cos

Fonction cosinus (angle en radian)

math.exp

Fonction exponentielle

math.log10

Fonction logarithme décimal

math.pi

Constante Pi

math.nan

Valeur flottante non définie (Not A Number)

Numpy

Le paquet (ensemble de modules) Numpy facilite la manipulation de tableaux avec Python.

import numpy as np

L'importation de ce paquet se fait usuellement avec alias np.

Plusieurs méthodes pour créer des tableaux Numpy.

Fonction/méthode

Description

np.array

Tableau Numpy à partir d'une liste Python.

np.linspace

Tableau Numpy à partir d'un intervalle de N valeurs.

np.arange

Tableau Numpy à partir d'un intervalle avec un pas d'incrémentation.

np.zeros

Tableau Numpy de zéros de taille N.

np.loadtxt

Tableau(x) Numpy à partir de l'importation d'un fichier CSV

Quelques exemples de fonctions et constantes mathématiques.

Fonction/constante

Description

np.sin

Fonction sinus

np.exp

Fonction exponentielle

np.sqrt

Fonction racine carré

np.pi

Constante pi

np.nan

Valeur flottante non définie (Not A Number)

Statistique

Fonction/méthode

Description

np.mean

Valeur moyenne d'un tableau Numpy

np.std

Ecart-type d'un tableau Numpy

np.random.normal

Génération de nombres aléatoires suivant la loi normale

Autres traitements.

Fonction/méthode

Description

np.polyfit

Modélisation à partir d'un polynôme d'ordre n

np.trapz

Intégration d'un tableau avec la méthode des trapèzes.

np.fft

Transformé rapide de Fourier (spectre)

Matplotlib

Matplotlib est une librairie (ensemble de paquets) très complète pour les représentations graphiques. En particulier, le module matplolib.pyplot simplifie son usage.

import matplotlib.pyplot as plt

L'importation du module pyplot se fait habituellement avec alias plt.

Les bases pour les graphiques.

Fonction/méthode

Description

plt.plot

Trace une courbe à partir d'une série de points

plt.show

Affiche la figure (à appeler en dernier !)

Paramétrage du repère.

Fonction/méthode

Description

plt.title

Ajoute un titre au repère.

plt.xlabel

Ajoute une légende à l'axe des abscisses.

plt.ylabel

Ajoute une légende à l'axe des ordonnées.

plt.xlim

Fixe l'échelle sur l'axe des abscisses.

plt.ylim

Fixe l'échelle sur l'axe des ordonnées.

plt.grid

Ajoute un quadrillage.

Autres types de représentations graphiques.

Fonction/méthode

Description

plt.scatter

Trace une nuage de points (peu utilisée au profit de plt.plot)

plt.hist

Trace un histogramme.

plt.quiver

Trace un champ de vecteurs (ou un vecteur).

plt.stem

Trace des tiges (représentation d'un spectre).

Annotations.

Fonction/méthode

Description

plt.text

Ajoute un texte simple aux coordonnées (x, y) d'un repère

plt.arrow

Dessine une flèche dans un repère.

plt.annotate

Ajoute un texte aux coordonnées (x, y) avec plus d'options (ex. flèche)

Droites et zones de délimitation

Fonction/méthode

Description

plt.axvline

Trace une droite verticale à l'abscisse x0

plt.axhline

Trace une droite horizontale à l'ordonnée y0.

plt.axvspan

Délimite une zone rectangulaire verticale entre x1 et x2.

plt.axhspan

Délimite une zone rectangulaire horizontale entre y1 et y2.

plt.fill_between

Remplit l'aire entre deux courbes (ou entre une courbe et l'axe des abscisses).

Scipy

La librairie Scipy comporte un grand nombre de fonctions évoluées pour le traitement numérique regroupées dans des modules spécifiques (stats, interpolate, ... )

Modélisation

Fonction/méthode

Description

scipy.stats.linregress

Modélisation par régression linéaire

scipy.optimize.curve_fit

Modélisation par une fonction quelconque

scipy.interpolate.interp1d

Interpolation polynomiale

Exemples d'importation.
from scipy.stats import linregress
from scipy.optimize import curve_fit
from scipy.interpolate import interp1d
Pour le supérieur (CPGE, ...)

Fonction/méthode

Description

scipy.integrate.odeint

Intégration (résolution) d'une fonction décrivant une équation différentielle.

scipy.optimize.bisect

Détermination des racines d'une fonction par la méthode dichotomique

Importation.
from scipy.integrate import odeint
from scipy.optimize import bisect

Statistics

Statistics est un module de la librairie standard de Python pour des calculs statistiques sur des tableaux de données numériques.

Principales fonctions

Fonction

Description

statistics.mean

Valeur moyenne arithmétique.

statistics.stdev

Ecart type.

Exemple d'importation.
from statistics import mean, stdev

Random

Le module random fait également partie de la librairie standard de Python. Il implémente des fonctions de génération de nombres aléatoires.

Principales fonctions

Fonction

Description

random.randint

Retourne un entier au hasard dans un intervalle.

Exemples d'importation
from random import randint