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é : v1 (1re itération), puis v2 (2e itération) puis v3 (3e itération) jusqu’à  vN–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.


   ◄ Page précédente