1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
pas = 0.01
Q=10
t=30
u0=pi
v0=0
X_CI=np.array([u0,v0])
pasQ = 0.01
a = 0.1
b = 3
def F(X, t, Q) :
"""
Entrée:
X tableau contenant u et v
t un flottant
Sortie:
dérivées de u et v
"""
u=X[0]
v=X[1]
dudt=v
dvdt=-v-Q*Q*sin(u)
return([dudt , dvdt])
temps=np.arange(0,t,pas)
sol=odeint(F, X_CI, temps, args=(Q,))
u=sol[:,0]
v=sol[:,1]
plt.plot(temps,u,'r',label='u(t)') #tracé de u(t)
plt.title('evolution de u et du/dt au cours du temps')
plt.plot(temps,v,'b',label='du(t)/dt')
plt.xlabel('temps')
plt.legend(loc='best')
plt.grid()
plt.show() |
Partager