8. Tracer - math
¶
Dans ce chapitre nous allons découvrir comment nous pouvons tracer des fonctions mathématiques pour les visualiser. Le module math
met à disposition toute une série de constantes et de fonctions mathématiques. Nous allons explorer :
les fonctions trigonométriques
sin()
,cos()
ettan()
,la fonction exponentielle
exp()
,la fonction logarithmique
log()
.
8.1. Tracer une fonction¶
Pour donner une idée de ce que nous allons faire, voici tout de suite un exemple de comment tracer les deux fonctions trigonométriques sin()
et cos()
.
Au début du programme nous importons le module math
. Par la suite nous pouvons accéder aux nouvelles fonctions importées math.sin()
et math.cos()
.
Dans l’intervalle [-300, 300] nous prenons une valeur tous les 10, ce qui nous fait 60 valeurs.
Pour adapter la fonction à l’échelle de la tortue nous changeons :
x
par un facteur de 50,y
par un facteur de 100.
Exercice : Modifiez couleur, amplitude, fréquence ou nombre de points de la courbe.
8.2. Importer un module¶
Le mot-clé import
permet d’importer un module. Normalement c’est dans la première ligne d’un programme qu’on importe un module. La fonction dir()
permet de voir le contenu du module.
Exercice : Importez le module random
et affichez son contenu avec dir
.
8.3. Format module.objet
¶
Pour utiliser un objet d’un module importé, il faut écrire de façon module.objet
le nom du module
le point
.
(dot)le nom de l’objet
Par exemple math.pi
pour la constante \(\pi\). Voici quelques exemples.
Exercice : Essayez la fonction pow()
(puissance) et affichez le résultat.
8.4. Constantes¶
Avec l’expression from module import obj1, obj2
nous pouvons explicitement importer des objets par nom.
Ceci nous permet de directement accéder à l’objet sans ajouter le nom du module. Nous pouvons donc écrire directement pi
au lieu de math.pi
.
Le module math
contient 5 constantes:
e
base des logarithmes naturels (nombre d’Euler)inf
symbole pour infiniténan
symbole pour not a numberpi
rapport de la circonférence d’un cercle à son diamètretau
rapport de la circonférence d’un cercle à son rayon
Exercice : Vérifiez de façon numérique que \(2\pi = \tau\).
8.5. Fonction trigo¶
Voici les fonctions trigonométriques:
sin/cos
fonction sinus/cosinussinh/cosh
fonctions sinus/cosinus hyperboliquestan/tan2
fonction tangente avec 1 ou 2 argumentstanh
fonction tangente hyperbolique
Et leurs fonctions inverses (arc):
asin/asinh
acos/acosh
atan/atanh
Dorénavant nous utilisons l’expression from math import *
pour importer tous les objets du module math
. Le symbole *
représente tous les objets.
Exercice : Ajoutez et tracez une deuxième fonction trigonométrique dans une autre couleur.
8.6. Afficher les axes¶
Dessinons aussi des axes, nous allons utiliser la fonction stamp
pour dessiner la flèche de l’axe.
Nous pouvons re-écrire le code de façon plus court et plus lisible en définissant une fonction axe()
.
Cette fonction utilise deux paramètres p
et q
qui sont un tuple qui représente^ les coordonnées du point de départ et du point d’arrivée.
8.7. Afficher une grille¶
Avec multiples lignes horizontales et verticales nous dessinons une grille.
En définissant la fonction ligne()
nous pouvons rendre le programme plus lisible.
Exercice : Mettez la distance d
à 20 et à 10 et réexécutez le programme.
8.8. Echelle¶
8.9. Tracer des fonctions¶
Voici du code à développer.