Vous êtes sur la page 1sur 14

Comment peut-on créer des graphiques avec python?

Comment peut-on créer des graphiques avec python?

Python est souvent utilisé par des scientifiques pour


donner forme à des données. La librairie matplotlib crée
pour vous des graphiques en quelques lignes de code

import matplotlib.pyplot as plt


plt.plot(xx,yy)
Introduction à NumPy
La bibliothèque NumPy permet d’effectuer
des calculs numériques avec Python. Elle
introduit une gestion facilitée des tableaux
de nombres.
>>> import numpy as np
NumPy définit par défaut la valeur de pi.
>>>print( np.pi) ->3.141592653589793
Tableaux - numpy.array()

Les tableaux (en anglais, array) peuvent être


créés avec numpy.array(). On utilise des
crochets pour délimiter les listes d’éléments
dans les tableaux.

>>> a = np.array([[1, 2, 3], [4, 5, 6]])

>>>print( a)->array([[1, 2, 3], [4, 5, 6]])


La fonction numpy.arange()

>>> m = np.arange(3, 15, 2)

>>>print( m)->array([ 3, 5, 7, 9, 11, 13])

!!! Noter la différence entre numpy.arange() et range() :

numpy.arange() retourne un objet de type numpy.ndarray.

range() retourne un objet de type range.

>>> n = range(3, 15, 2)

>>>print(n)->range(3, 15, 2)
>>> list(range(3, 15, 2))
[3, 5, 7, 9, 11, 13]
numpy.arange() accepte des arguments qui ne sont pas
entiers.
>>> print(np.arange(0, 11*np.pi, np.pi))->array([ 0. ,
3.14159265, 6.28318531, 9.42477796, 12.56637061,
15.70796327, 18.84955592, 21.99114858,
25.13274123, 28.27433388, 31.41592654])
numpy.linspace()
permet d’obtenir un tableau 1D allant d’une valeur
de départ à une valeur de fin avec un nombre
donné d’éléments.
>>> print(np.linspace(3, 9, 10))->array([ 3.
, 3.66666667, 4.33333333, 5. ,
5.66666667, 6.33333333, 7. ,
7.66666667, 8.33333333, 9. ])
Autres fonction de numpy
 np.ones((nl,nc),type) : matrice de 1

 np.zeros((nl,nc)) :matrice de zéros

 np.transpose(mat) : transposé d’une matrice

 np.linalg.det(mat) : déterminant de mat

 sin , cos , sum , min , max , …etc


Résolutions d'équations
différentielles
Équations différentielles

 Les équations différentielles modélisent de nombreux


problèmes physiques:

 Dans de rares cas on est capable de trouver une solution


analytique mais le plus souvent on utilisera des techniques
numériques afin de s'approcher de la solution.
 Les problèmes deviennent rapidement complexes. Les
méthodes d'analyse numérique permettront d'approcher les
solutions réelles sans toutefois les atteindre.
Equations différentielles du premier ordre

De nombreux problèmes conduisent à la résolution d'équations


𝒅𝒚
différentielles du premier ordre du type : = 𝒇 𝒕, 𝒚 Ecrite
𝒅𝒕
aussi :
Méthode d’Euler

Lorsqu'il n'est pas possible d'obtenir une solution explicite sous


forme de fonctions usuelles, on détermine une solution
approchée (numérique). Il existe plusieurs méthodes
permettant de réaliser ceci. L'une d'entre elles est la méthode
d'Euler qui sera étudiée ici
 On veut déterminer une solution approchée de l’équation
différentielle :
𝒚′ 𝒕 = 𝒇(𝒕, 𝒚 𝒕 )
 Où : 𝒕 → 𝒇(𝒕, 𝒚 𝒕 ) est une fonction continue sur
l’intervalle [a,b].
 avec une condition initiale : y(a)=y0
Méthode d’Euler
𝒚′ 𝒕 = 𝒇(𝒕, 𝒚 𝒕 )

y(a)=y0
 On considère une subdivision régulière t = (t0, t1, …, tn) de
[a,b] de pas h =(b-a)/n, on a donc :
ti =t0+ih =a+ih

 Si h est suffisamment petit on a :


𝒕𝒌+𝟏
𝒚 𝒕𝒌+𝟏 − 𝒚 𝒕𝒌 = න 𝒇 𝒕, 𝒚 𝒕 𝒅𝒕 ≅ 𝒉𝒇(𝒕𝒌 , 𝒚(𝒕𝒌 ))
𝒕𝒌
 Les approximations sont alors calculées de proche en proche par :
𝒚𝒌+𝟏 = 𝒚𝒌 + 𝒉. 𝒇(𝒕𝒌 , 𝒚 𝒕𝒌 )
Exercice 2 : Evolution d’une température en chimie

 On note y(t) la température en degrés Celsius d’une réaction


chimique en fonction du temps t, t étant exprimé en heures.
 Après étude, on constate que la température est solution de
l’équation différentielle :

 Avec la condition initiale y(0)=20°C.


 Ecrire un programme qui donne un tableau composé des
températures de la réaction chimique chaque demi-heure
pendant la première journée de la réaction.
 Tracer la courbe représentative de cette solution