Comment représenter graphiquement les trajectoires d'un système différentiel avec scipy.integrate.odeint ?
Approfondissement — Tracer numériquement les trajectoires d'un système différentiel pour illustrer les notions de convergence vers un équilibre et d'influence des conditions initiales.
On considère l'équation avec sur . Tracer la solution numérique avec odeint.
Approfondissement — Tracer numériquement les trajectoires d'un système différentiel pour illustrer les notions de convergence vers un équilibre et d'influence des conditions initiales.
Le solveur scipy.integrate.odeint(f, X0, t) intègre le système sur la grille de temps à partir de la condition initiale , et renvoie un tableau dont chaque ligne donne l'état approché à l'instant correspondant.
On considère l'équation avec sur . Tracer la solution numérique avec odeint.
Je définis la fonction du second membre :
def f(y, t):
return -2 * y
Je fixe la condition initiale et la grille de temps :
import numpy as np
Y0 = 3
t = np.linspace(0, 5, 200)
J'appelle odeint :
from scipy.integrate import odeint
sol = odeint(f, Y0, t)
La colonne sol[:, 0] donne l'approximation de .
Je trace la solution :
import matplotlib.pyplot as plt
plt.plot(t, sol[:, 0])
plt.xlabel('t'); plt.ylabel('y(t)'); plt.title("y' = -2y, y(0)=3")
plt.show()
La courbe décroît exponentiellement vers , ce qui illustre la convergence vers l'équilibre .
La solution numérique converge exponentiellement vers , en accord avec la solution exacte .
Système proie-prédateur (Lotka-Volterra) : et avec . Tracer et sur .
On veut étudier l'influence de la condition initiale sur l'équation logistique pour sur .
On considère l'équation logistique avec sur . Tracer la solution numérique.
Système linéaire : et avec . Tracer et sur .
Crée ton compte pour accéder à la fiche et aux exercices