Utilisation de fonctions
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.
2.4. Utilisation de fonctions#
Par la suite, on sera amené à réutiliser l’intégration et la dérivation numérique sur des vecteurs de valeurs comme réalisée dans la dernière partie. On va donc écrire deux fonctions deriv et integ qui vont réaliser respectivement :
la dérivation numérique d’une fonction \(f\) donnée par un vecteur de valeurs
yket les instants de mesuretk: calcul des \(f'(t_k)\)la primitivation numérique d’une fonction \(f\) donnée par un vecteur de valeurs
yket les instants de mesuretk: calcul des \(I_k = \int_{t_0}^{t_k} f(t) dt\)
On testera les deux fonctions grâce aux fichier de données utilisé précédemment
2.4.1. Création des fonctions#
Exercice 1:
Ecrire une fonction
deriv(x,y)qui prend comme argument deux vecteurxetycontenant le même nombre de valeur et qui renvoie le calcul de la dérivée pour chaque abscisse \(x_k\) dexde la fonction \(f\) qui aurait les valeurs \(y_k = f(x_k)\) (les \(y_k\) sont les éléments dey). Comme précédement, on réalisera une dérivation centrée sauf en \(x_0\) (dérivation à droite) et en \(x_{finale}\) (dérivation à gauche).Ecrire une fonction
inter(x,y)qui prend comme argument deux vecteurxetycontenant le même nombre de valeur et qui renvoie le calcul des intégrales \(I_k = \int_{x_0}^{x_k} f(x) dx\) pour chaque abscisse \(x_k\) dexoù la fonction \(f\) aurait les valeurs \(y_k = f(x_k)\) (les \(y_k\) sont les éléments dey). Comme précédement, on réalisera une intégration par la méthode des trapèzes.
2.4.2. Test des fonctions#
Exercice 2:
Charger comme précédemment les données dans deux vecteurs
tketukbpuis obtenir les valeurs de tension en volt dans un vecteurukUtiliser les fonctions
derivetintegcréés précédemment pour obtenir \(i(t)\) et \(E_J(t)\) puis les tracer.