{"cells":[{"metadata":{},"cell_type":"markdown","source":"# TP P17 : Mouvements dans le champ de pesanteur"},{"metadata":{},"cell_type":"markdown","source":"Dans ce TP, on analyse des mouvements à partir de vidéos :\n- Le premier mouvement est effectué en salle de TP et filmé avec votre téléphone.\n- Le deuxième mouvement est le mouvement d'un volant de badminton qui a été filmé dans un gymnase. Le mouvement a été extrait image par image et lissé numériquement afin de pouvoir être exploité dans cette activité."},{"metadata":{},"cell_type":"markdown","source":"### Importation des bibliothèques"},{"metadata":{"trusted":false},"cell_type":"code","source":"import numpy as np\nimport matplotlib.pyplot as plt","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"### Ouverture du fichier de données, extraction des tableaux t,x,y et affichage de la trajectoire"},{"metadata":{"trusted":false},"cell_type":"code","source":"import pandas as pd\ntab=pd.read_csv('bad-lisse.csv',sep='\\t')\nt=np.asarray(tab['t'])\nx=np.asarray(tab['x'])\ny=np.asarray(tab['y'])\nplt.clf()\nplt.xlabel('x')\nplt.ylabel('y')\nplt.plot(x,y,'b.')\nplt.show()","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"### Calcul des dérivées"},{"metadata":{"trusted":false},"cell_type":"code","source":"def derive(t,x): # renvoie une liste contenant la dérivée discrète de la liste x par rapport à la liste t\n# à coder\n\n# calcul de vx, vy, ax, ay, fx, fy\n","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"### Tracé du vecteur force de l'action de l'air en différents points de la trajectoire"},{"metadata":{"trusted":false},"cell_type":"code","source":"n=10 # intervalle entre 2 vecteurs successifs\nplt.clf()\nplt.xlabel('x')\nplt.ylabel('y')\nplt.plot(x,y,linestyle='dashed')\nplt.quiver(x[2::n],y[2::n],fx[::n],fy[::n],scale=50)\nplt.show()","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"### Loi de force"},{"metadata":{"trusted":false},"cell_type":"code","source":"# modules de la vitesse et de la force\nv=np.sqrt(vx**2+vy**2)\nf=np.sqrt(fx**2+fy**2)\n\n# affichage de f en fonction de v en échelle log/log\nplt.clf()\nplt.xscale('log')\nplt.yscale('log')\nplt.xlabel('v')\nplt.ylabel('f')\nplt.plot(v[1:-1],f,label='Expérience')\nplt.show()","execution_count":null,"outputs":[]},{"metadata":{"trusted":false},"cell_type":"markdown","source":"### Modélisation par une loi en v ou en v^2"},{"metadata":{"trusted":false},"cell_type":"code","source":"k = 1 # coefficient à régler pour l'accord théorie / expérience\n\nvl=np.linspace(min(v),max(v),100)\nplt.plot(vl,vl,label='Loi en $v$')\nplt.plot(vl,k*vl**2,label='Loi en $v^2$')\nplt.legend()\nplt.show()","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"name":"python3","display_name":"Python 3","language":"python"}},"nbformat":4,"nbformat_minor":2}