9.M2 : Tracer un vecteur vitesse en python
Compétences mises en jeu
• Exploiter une chronophotographie et représenter des vecteurs vitesse.
I - Tracer un vecteur
Tester le code suivant en modifiant quelques valeurs pour bien le comprendre.
import matplotlib.pyplot as plt
# Paramétrages du graphique
plt.plot([0,5],[0,5], 'w ') # limite des axes
plt.axis('equal') # axes normés
plt.grid() # affichage de la grille
# Coordonnées des points A et B
xA = 1
yA = 1.5
# Coordonnées du vecteur v
vx = 0.5
vy = 1
# Tracé du vecteur v : - l'échelle est choisie par le programme
# - plus scale est grand plus le vecteur est court
plt.quiver(xA, yA, vx, vy, scale=3, color='r')
# Affichage du graphique
plt.show()
II - Tracer des vecteurs vitesse à partir d'un tableau de valeurs
Considérons les données suivantes correspondant aux positions successives d'un point \(P\) au cours du temps.
| \(P_0\) | \(P_1\) | \(P_2\) | |
| t (en s) | 0 | 1 | 2 |
|---|---|---|---|
| x (en m) | 1,0 | 1,8 | 3,6 |
| y (en m) | 3,1 | 3,5 | 3,9 |
La vitesse à l'instant \(t_0\) est \(v_0 = \dfrac{P_0P_1}{t_1-t_0}\)
La vitesse à l'instant \(t_i\) est \(v_i = \dfrac{P_iP_{i+1}}{t_{i+1}-t_{i}}\)
Autrement dit :
\(v_{i,x} = \dfrac{P_{i+1,x}-P_{i,x}}{t_{i+1}-t_i}\)
\(v_{i,y} = \dfrac{P_{i+1,y}-P_{i,y}}{t_{i+1}-t_i}\)
Tester le code suivant en étudiant chaque ligne pour bien le comprendre.
import matplotlib.pyplot as plt
# Données
t = [0,1,2]
Px = [1, 1.8, 3.6]
Py = [3.1, 3.5, 3.9]
# Paramétrages du graphique
plt.plot([0,5],[0,5], 'w. ') # limite des axes
plt.axis('equal') # axes normés
plt.grid() # affichage de la grille
echelle = 10 # echelle pour les vecteurs
# Vecteur vitesse pour P0
i = 0
vx = (Px[i+1]-Px[i])/(t[i+1]-t[i])
vy = (Py[i+1]-Py[i])/(t[i+1]-t[i])
plt.quiver(Px[i], Py[i], vx, vy, scale=echelle, color='r')
# Vecteur vitesse pour P0
i = 1
vx = (Px[i+1]-Px[i])/(t[i+1]-t[i])
vy = (Py[i+1]-Py[i])/(t[i+1]-t[i])
plt.quiver(Px[i], Py[i], vx, vy, scale=echelle, color='r')
# Affichage du graphique
plt.show()
