On peut ensuite tracer des vecteurs vitesse en utilisant les instructions
suivantes.
import
matplotlib.pyplot as plt
# Positions du mobile
x = [10, 10, 10, 10, 10, 10, 10]
y = [20, 19.56, 18.24, 16.04, 12.96, 9.03, 4.25]
# Tracé de la chronophotographie
plt.plot(x, y, 'o', markersize=4)
plt.xlabel("x (en m)")
plt.ylabel("y (en m)")
plt.title("Chronophotographie du mouvement")
# Tracé des vecteurs vitesse
N = 7
dt = 0.3
for k in
range(0, N-1):
Vy = (y[...] - y[...]) / dt
echelle = 0.2
Vy = Vy * echelle
plt.quiver(x[k], y[k], 0, ..., color="red",
scale=1, scale_units='xy')
# Affichage
plt.show()
Les instructions dans la boucle for s’exécutent une première fois pour
k = 0 (1re itération), puis pour k = 1 (2e
itération), puis k = 2 (3e itération) jusqu’à
k = N − 2 ((N − 1)e itération).
À chaque itération un vecteur vitesse est tracé : v→1 (1re
itération), puis v→2 (2e
itération) puis v→3 (3e
itération) jusqu’à v→N–1 ((N − 1)e
itération).
La fonction quiver(xM, yM, Vx, Vy)
permet de tracer un vecteur v→
dont l’origine est M(xMyM) et dont les coordonnées
sont (VxVy). Les arguments falcultatifs color="red",
scale=1 et scale_units='xy' dans la fonction permettent la mise en forme
du vecteur.
Ordonnée du vecteur
vitesse :
1re itération (k = 0) :
Vy = (y[1] − y[0]) / dt
2e itération (k = 1) :
Vy = (y[2] − y[1]) / dt
1. Quelle est l'expression de Vy lors de la
3e itération (k = 2) ?
2. Quelle est l'expression de Vy lors de la
(k + 1)e itération (k quelconque) ?
3. Copier le code puis le coller
depuis votre éditeur de code Python.
Compléter les lignes 14 et 17 puis l'exécuter.
4. Expliquer pourquoi les instructions de
la boucle for ne peuvent pas être réalisées une Ne fois.