{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyPKltpFGH4tzumJLutFNbby"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","metadata":{"id":"zpdgit05wHIL"},"source":["**II – Dosage conductimétrique d’un mélange de deux acides (acide chlorhydrique $HCl$ et acide éthanoïque $CH_3CO_2H$)**\n"]},{"cell_type":"code","metadata":{"id":"OBe0lqkEXVR6"},"source":["import matplotlib.pyplot as plt#Pour tracer des graphiques\n","import numpy as np #Pour faire divers calculs\n","\n","##Courbe de dosage\n","\n","#Valeurs expérimentales du dosage\n","Np = 'à remplir' #Nombre de points expérimentaux Np = V_final+1\n","x=np.arange(0,Np,1) #Valeurs du volume en mL par ajout de 1 mL\n","y=np.array(['à remplir avec les valeurs expérimentales de la conductivité'])\n","#Valeurs de la conductivité mesurée mS/cm\n","\n","#Graphique brut\n","plt.figure(3)\n","plt.xlabel('volume en mL')\t#Légende de l’axe des abscisses\n","plt.ylabel('conductivité en mS/cm')\t#Légende de l’axe des ordonnées\n","plt.plot(x,y,'b+',label='points') #Tracé des points expérimentaux en bleu\n","plt.xlim(0, 25) #Limite axe abscisse\n","plt.ylim(0, 2.5) #Limite axe ordonnée\n","plt.title('Dosage conductimétrique d\\'un mélange d\\'acide') #Titre du graphe\n","plt.legend()\t#Affiche l’étiquette de la courbe\n","plt.grid()\t#Affiche le quadrillage\n","plt.show()\t#Affiche le graphique\n","\n"],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"id":"FZ4B-QP8aWKK"},"source":["#Régression linéaire avec np.polyfit\n","x1=x['à remplir'] #Indice des abscisses du premier segment\n","y1=y['à remplir'] #Indice des ordonnées du premier segment\n","p1=np.polyfit(x1, y1, 1) #Régression linéaire du premier segment (équation y = p1[0]*x+p1[1])\n","\n","x2=x['à remplir'] #Indice des abscisses du deuxième segment\n","y2=y['à remplir'] #Indice des ordonnées du deuxième segment\n","p2=np.polyfit(x2, y2, 1) #Régression linéaire du deuxième segment (équation y = p2[0]*x+p2[1])\n","\n","x3=x['à remplir'] #Indice des abscisses du troisième segment\n","y3=y['à remplir'] #Indice des ordonnées du troisième segment\n","p3=np.polyfit(x3, y3, 1) #Régression linéaire du troisième segment (équation y = p3[0]*x+p3[1])\n","\n","#Graphique et droite de régression\n","plt.figure(3)\n","plt.xlabel('volume en mL')\t#Légende de l’axe des abscisses\n","plt.ylabel('conductivité en mS/cm')\t#Légende de l’axe des ordonnées\n","plt.plot(x,y,'b+',label='points') #Tracé des points expérimentaux en bleu\n","plt.plot(x,np.polyval(p1,x),'r',label='modèle 1') #Tracé de la première droite en rouge\n","plt.plot(x,np.polyval(p2,x),'g',label='modèle 2') #Tracé de la deuxième droite en vert\n","plt.plot(x,np.polyval(p3,x),'c',label='modèle 3') #Tracé de la troisième droite en cyan\n","plt.xlim(0, 25) #Limite axe abscisse\n","plt.ylim(0, 2.5) #Limite axe ordonnée\n","plt.title('Dosage conductimétrique d\\'un mélange d\\'acide') #Titre du graphe\n","plt.legend()\t#Affiche l’étiquette de la courbe\n","plt.grid()\t#Affiche le quadrillage\n","plt.show()\t#Affiche le graphique\n","\n","#print('pente_1 =',p1[0]) #Affiche la pente de la première droite\n","#print('y0_1 =', p1[1]) #Affiche la première ordonnée à l’origine\n","\n","#print('pente_2 =',p2[0]) #Affiche la pente de la deuxième droite\n","#print('y0_2 =', p2[1]) #Affiche la deuxième ordonnée à l’origine\n","\n","#print('pente_3 =',p3[0]) #Affiche la pente de la troisième droite\n","#print('y0_3 =', p3[1]) #Affiche la troisième ordonnée à l’origine\n","\n","Ve_1=(p2[1]-p1[1])/(p1[0]-p2[0]) #Calcul de la première intersection\n","print(\"Ve_1 = \",format(Ve_1,\"#.2f\"),\" mL\") #Affiche le premier volume équivalent\n","\n","Ve_2=(p3[1]-p2[1])/(p2[0]-p3[0]) #Calcul de la seconde intersection\n","print(\"Ve_2 = \",format(Ve_2,\"#.2f\"),\" mL\")#Affiche le second volume équivalent"],"execution_count":null,"outputs":[]},{"cell_type":"markdown","metadata":{"id":"yPOWnyrkyC7m"},"source":["\n","**III – Détermination d’une constante d’équilibre**\n","\n","Répondre aux questions posées sur le CR papier avant de faire le traitement python ?"]},{"cell_type":"code","metadata":{"id":"IBDCeYTOWL4d"},"source":["import matplotlib.pyplot as plt #Pour tracer des graphiques\n","import numpy as np #Pour faire divers calculs\n","\n","##Evolution de la conductivité\n","Vi=np.arange(2,22,2) #10 valeurs de volume en mL\n","sigma=np.array(['à remplir avec les valeurs expérimentales de la conductivité SAUF à V = 0 mL'])\n","#10 valeurs de la conductivité mesurée µS/cm\n","\n","##Valeurs expérimentales\n","Ci=1.0 #Concentration solution burette acide éthanoique en mol/L\n","V0=100.0 #Volume initial d'eau distillée en mL\n","Lambda=39.10 #Conductivité molaire limite acide éthanoique en mS*m^2/mol\n","\n","##Définition des fonctions pour les différentes grandeurs à déterminer\n","ni=Ci*Vi # Quantité de matière introduite acide éthanoique en mmol\n","VTi=V0+Vi # Volume totale de la solution en mL\n","C=ni/VTi # Concentration introduite acide éthanoique en mol/L\n","ksi_v=sigma/Lambda/10**4 # Avancement volumique en mol/L\n","#print(C)  #Affiche les valeurs de la concentration introduite en acide éthanoique en mol/L\n","#print(ksi_v)  #Affiche les valeurs de l'avancement volumique en mol/L\n","\n","##Définition de la fonction pour le calcul de la constante d'équilibre\n","K=ksi_v**2/(C-ksi_v) #Constante d'équilibre\n","K_eq=np.mean(K) #Calcul de la moyenne de Keq\n","sigma_K=np.std(K, ddof=1) #Calcul de l'écart-type des Keq\n","u_K=(sigma_K)/10**(1/2) #Calcul de l'incertitude-type de la moyenne de Keq\n","print(\"K_eq = \",format(K_eq,\"#.4g\"), \"l'écart-type vaut \",format(sigma_K,\"#.2g\"),\" et u(K_eq) = \",format(u_K,\"#.2g\"))\n","#Affiche la constante d'équilibre et l'incertitude-type\n"],"execution_count":null,"outputs":[]}]}