Implémentation basique
Contents
La page ci-présente existe en version notebook téléchargeable grâce au bouton (choisir le format .ipynb
). On rappelle qu’l faut ensuite l’enregistrer dans un répertoire adéquat sur votre ordinateur (capa_num
par exemple dans votre répertoire personnel) puis lancer Jupyter Notebook depuis Anaconda pour accéder au notebook, le modifier et exécutez les cellules de code adéquates.
4.3. Implémentation basique#
4.3.1. Schéma d’euler - Système d’équations#
On va chercher à résoudre le système suivant:
avec \(v(t=0) = 2\), \(u(t=0) = 0\), \(\tau = 1\)
Exercice 1 :
Copier-coller la fonction
euler
que vous avez écrite pour la séance précédente. Si le corps de la fonction ne change pas, sa signature change:
euler(f:callable, y0: numpy.ndarray, t0: float, tf: float, pas: float) -> (numpy.ndarray, numpy.ndarray)
Ecrire une fonction
F(t:float, Y:numpy.ndarray) -> numpy.ndarray
qui renvoie la fonction \(F\) du schéma d’Euler précédent. Attention, cette fois,Y
est un vecteur (dont les composantes sont \(u_k\) et \(v_k\)) et \(F\) renvoie un vecteur (dont les composantes sont \(\frac{\rm{d}u}{\rm{dt}}(t_k)\) et \(\frac{\rm{d}v}{\rm{dt}}(t_k)\) obtenus à partir du système d’équations). Veillez à renvoyer un vecteur et non une liste (pourquoi ?).Utiliser la fonction
euler
pour obtenir \(Y(t)\) puis tracer \(u(t)\) et \(v(t)\) entre \(t=0\) et \(t=10\). A vous de choisir le pas d’intégration sachant que \(\tau\) est à peu près le “temps caractéristique” du système.Obtenir la solution grâce aux fonction
odeint
ousolve_ivp
puis les tracer pour vérifier que vous obtenez le même tracé.
"""Ne pas oubliez d'importer les bibliothèques scientifiques."""
4.3.2. Schéma d’Euler - Ordre 2#
On veut résoudre l’équation différentielle suivante:
On va donc travailler avec le vecteur :
Exercice 2 :
La fonction
euler
a-t-elle besoin d’être modifiée ?Ecrire une fonction
F2(t, Y)
correspondant au schéma d’Euler comme expliqué précédemment.Obtenir la solution sur le même intervale de temps que dans l’exercice précédent et vérifier que la solution coïncide avec la solution trouvée avec un système d’équations.