#!/usr/bin/env python
# -*- coding: utf-8 -*-
import turtle
X = -100.0
Vx = 15
DVx = 0
Y = 0.0
Vy = 20
DVy = -4.0
t = 0.0
Dt = 1.0
T_MAX = 15
bob = turtle.Turtle()
bob.penup()
bob.goto(X,Y)
bob.pendown()
while t < T_MAX:
DX = Vx * Dt
DY = Vy * Dt
t = t + Dt
X = X + DX
Vx = Vx + DVx
Y = Y + DY
Vy = Vy + DVy
bob.setheading(bob.towards(X,Y))
bob.goto(X,Y)
bob.stamp()
print t," ",X," ",Y
turtle.done()
import numpy as np
u = np.array([1,1])
v = np.array([2,3])
w = np.add(u,v)
z = np.add(u,-v)
print u
print v
print w
print z
print u + v + w + z
[1 1]
[2 3]
[3 4]
[-1 -2]
[5 6]
------------------
(program exited with code: 0)
Press return to continue
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
#position
X = []
Y = []
# vecteur déplacement U,V coordonnées vecteur, X,Y sa position
vecU = []
vecV = []
vecX = []
vecY =[]
# équation horaire du mouvement
def position(t):
x = 0.0 + 1.0 * t
y = 9 + 0.5 * t -0.1 *t*t
return x,y
# calcul de la trajectoire
for t in range(0,10):
x,y = position(t)
X.append(x)
Y.append(y)
# calcul vecteur déplacement
# on copie les points de la trajectoire où tracer le vecteur et
# on ote le dernier point car on ne peut pas y calculer de déplacement
vecX = list(X)
vecY = list(Y)
vecX.pop()
vecY.pop()
for i,x in enumerate(X):
if i < len(X) -1:
deplacement = X[i+1] - X[i]
vecU.append(deplacement)
for i,y in enumerate(Y):
if i < len(Y) -1 :
deplacement = Y[i+1] - Y[i]
vecV.append(deplacement)
# on trace : la trajectoire puis les vecteurs déplacements
plt.plot(X,Y,'ro')
plt.quiver(vecX,vecY,vecU,vecV) # voir doc pyplot, tracer de vecteur
plt.axis([0,10,0,10])
plt.xlabel(" x (en m)")
plt.ylabel(" y (en m)")
plt.show()
Ces ressources explorent l'intérêt de la programmation dans l'enseignement de la physique-chimie.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
#position
X = []
Y = []
# vecteur déplacement U,V coordonnées vecteur, X,Y sa position
vecU = []
vecV = []
vecX = []
vecY = []
# équations horaires du mouvement
def position(t):
x = 1.0 + 1.0 * t
y = 5 + 1.5 * t -0.2 *t*t
return x,y
# calcul de la trajectoire pour 10 dates
for t in range(0,10):
x,y = position(t)
X.append(x)
Y.append(y)
# calcul vecteur déplacement U,V = deltaX,deltaY , tracé en X,Y
for i in range(0, len(X)-1):
deplacement = X[i+1] - X[i]
vecU.append(deplacement)
vecX.append(X[i])
for i in range(0, len(Y)-1):
deplacement = Y[i+1] - Y[i]
vecV.append(deplacement)
vecY.append(Y[i])
# on trace : la trajectoire ...
plt.plot(X,Y,'ro')
# ... puis les vecteurs déplacements
# voir doc fonction quiver sur https://matplotlib.org/api/pyplot_api.html
plt.quiver(vecX,vecY,vecU,vecV, angles='xy', color='b',scale_units='xy', scale=1)
# paramètres du graphe (taille, légendes)
plt.axis([0,15,0,10])
plt.xlabel(" x (en m)")
plt.ylabel(" y (en m)")
# afficher le graphe
plt.show()
Retourner vers Terminale S et spécialité
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité