Étiquette : Chimie

Projets

Tableau d’avancement pour un élève en physique-chimie

Le tableau d’avancement est un outil utilisé principalement en physique chimie, il permet d’établir un bilan de matière à l’état initial, pendant la réaction et à l’état final. Il est ensuit utilisé pour connaitre les quantités de matières finales.

Tableau d’avancement exemple

Présentation du projet

Le programme python créé ici permet de calculer les quantités de matières finales lors d’une réaction chimique produite afin d’aider un élève de physique chimie à calculer le tableau d’avancement de cette réaction.
Le programme est un programme simple basé sur une boucle while, étudiée en classe de première de NSI. La boucle permet ici de soustraire une valeur calculée par le programme à une valeur donnée initialement par l’utilisateur jusqu’au nombre minimum de zéro.

L’utilisateur du programme se doit de rentrer en premier les informations dont le programme se base ensuite, telles les coefficients stœchiométriques et les quantités de matières initiales. Le pas d’avancement n’est pas obligatoire, c’est pour cela qu’il a été décidé de le rajouter dans la 2ème étape du projet. C’est lors de la dernière étape que le programme a été peaufiné.

Etape 1 :

print("Donner les valeurs des coefficients stœchiométriques")
a=int(input("Valeur a="))
b=int(input("Valeur b="))
c=int(input("Valeur c="))
d=int(input("Valeur d="))
print("Donner les valeurs des quantités")
na=float(input("Quantité de a"))
nb=float(input("Quantité de b"))

Etape 2 :

print("Donner les valeurs des coefficients stœchiométriques ")
a=int(input("Valeur a="))
b=int(input("Valeur b="))
c=int(input("Valeur c="))
d=int(input("Valeur d="))
pas=float(input("Donner le pas d'avancement="))
print("Donner les valeurs des quantités")
na=float(input("Quantité de a"))
nb=float(input("Quantité de b"))

Etape 3 :

print("Quelles sont les valeurs des coefficients stochiométriques ?")
a=int(input("Donnez la valeur de a="))
b=int(input("Donnez la valeur de b="))
c=int(input("Donnez la valeur de c="))
d=int(input("Donnez la valeur de d="))
pas=float(input("Donner le pas d'avancement="))
print("Donner les valeurs des quantités na et nb")
nai=float(input("La quantité de a est:"))
nbi=float(input("La quantité de b est:"))

C’est aussi lors de l’étape 2 que la boucle while a été mise en place :

while na>0.0 and nb>0.0:
    na=nai-a*x
    nb=nbi-b*x
    nc=nci+c*x
    nd=ndi+d*x
    print("na=",na,"\tnb=",nb,"\tnc=",nc,"\tnd=",nd)
    x=x+pas
print("Xmax est",x)

Analyse et conclusion

Quelques difficultés ont été rencontrées avec le « x » car il fallait le définir avant la boucle, l’insérer ainsi dans le programme ne fonctionnait pas.
La boucle while est composée de formules qui permettent de calculer les proportions restantes des réactifs et des produits jusqu’au moment où soit « a » soit « b » est égal à zéro.

L’étape 3 a permis de rajouter les dernières lignes du programme qui commentent et nous dis lequel des réactifs est limitant dans le cas où soit « a » soit « b » est atteint zéro, ou dans le cas où les deux réactifs ont atteint en même temps le palier de zéro, c’est-à-dire que le mélange a été introduit dans les proportions stœchiométriques.

if na==0 and nb==0:
    print("Le mélange a été introduit dans des proportions stœchiométriques.")
elif na==0:
    print("Le réactif limitant est na.")
elif nb==0:
    print("Le réactif limitant est nb.")
Projets

Calcul de la quantité de matière, tableau périodique des…

Le tableau périodique des éléments, également appelé tableau de Mendeleïev, classification périodique des éléments ou simplement tableau périodique, représente tous les éléments chimiques, associés à un numéro atomique.
La conception de ce tableau est généralement attribuée au chimiste russe Dmitri Ivanovitch Mendeleïev, qui, en 1869, construisit une table, différente de celle qu’on utilise aujourd’hui mais semblable dans son principe.
On peut également lire sur ce tableau les masses molaires des éléments.

Présentation du projet

Les calculs de quantité de matière étant au programme de seconde et qui sont utilisé régulièrement en travaux pratique de physique-chimie durant les différentes année de lycée. Nous avons souhaité grâce à ce programme vous rendre la tâche plus facile pour calculer simplement des quantités de matière.
Vous pouvez également faire des recherche dans le tableau par exemple en cherchant le symbole d’un élément grâce à son numéro atomique.

Pour ce programme, il était nécessaire de commencer par faire 2 listes. Une première avec tous les symboles atomiques, rangés dans le bon ordres pour que leur place dans la liste soit la même que leur numéro atomique, sachant que dans une liste la première valeur est attribué à 0, nous avons donc mis une valeur nul. Par exemple l’aluminium à le numéro atomique 13, c’est la 14ème valeur de la liste mais attribué au nombre 13 : Magique ! Puis nous avons fait une seconde liste avec exactement le même principe mais cette fois-ci avec les masses molaires des élément à la place des symboles. Grâce à cette organisation, la 14ème valeur de la seconde liste est attribué à la masse molaire de l’aluminium.

# premiere liste pour les symboles des éléments
symbole = ["", "H", "He", "Li","Be", "B", "C", "N", "O", "F", "Ne", "Na", "Mg", "Al",  "Si", "P", "S", "Cl", "Ar",
           "K", "Ca", "Sc", "Ti", "V", "Cr", "Mn", "Fe", "Co", "Ni", "Cu", "Zn", "Ga", "Ge", "As", "Se", "Br", "Kr",
           "Rb", "Sr", "Y", "Zr", "Nb", "Mo", "Tc", "Ru", "Rh", "Pd", "Ag", "Cd", "In", "Sn", "Sb", "Te", "I", "Xe",
           "Cs", "Ba","La", "Ce", "Pr", "Nd", "Pm", "Sm", "Eu", "Gd", "Tb", "Dy", "Ho", "Er", "Tm", "Yb", "Lu",
           "Hf", "Ta", "W", "Re", "Os", "Ir", "Pt", "Au", "Hg", "Tl", "Pb", "Bi", "Po", "At", "Rn",
           "Fr", "Ra", "Ac", "Th", "Pa", "U", "Np", "Pu", "Am", "Cm", "Bk", "Cf", "Es", "Fm", "Md", "No", "Lr",
           "Rf", "Db", "Sg", "Bh", "Hs", "Mt", "Ds", "Rg"]
 
# seconde liste pour les masse molaires
masseMol = [0, 1, 4, 7, 9, 11, 12, 14, 16, 19, 20, 23, 24, 27, 28, 31, 32, 35, 40,
            39, 40, 45, 48, 51, 52, 55, 56, 59, 59, 64, 65, 70, 73, 75, 79, 80, 84,
            85, 88, 89, 91, 93, 96, 98, 101, 103, 106, 108, 112, 115, 119, 122, 128, 127, 131,
            133, 137, 139, 140, 141, 144, 145, 150, 152, 157, 159, 162, 165, 167, 169, 173, 175,
            178, 181, 184, 186, 190, 192, 195, 197, 201, 204, 207, 209, 209, 210, 222,
            223, 226, 227, 232, 231, 238, 237, 244, 243, 247, 247, 251, 252, 257, 258, 259, 262,
            267, 268, 271, 272, 277, 276, 281, 280]


Nous avons ensuite créé plusieurs petits programmes qui effectues les différentes tâches possibles comme : chercher un symbole dans la liste grâce à son numéro atomique, chercher une masse molaire d’un élément grâce à son symbole puis deux calculs pour chercher une quantité de matière avec soit le symbole de l’élément soit son numéro atomique.

# premiere liste pour les symboles des éléments
symbole = ["", "H", "He", "Li","Be", "B", "C", "N", "O", "F", "Ne", "Na", "Mg", "Al",  "Si", "P", "S", "Cl", "Ar",
           "K", "Ca", "Sc", "Ti", "V", "Cr", "Mn", "Fe", "Co", "Ni", "Cu", "Zn", "Ga", "Ge", "As", "Se", "Br", "Kr",
           "Rb", "Sr", "Y", "Zr", "Nb", "Mo", "Tc", "Ru", "Rh", "Pd", "Ag", "Cd", "In", "Sn", "Sb", "Te", "I", "Xe",
           "Cs", "Ba","La", "Ce", "Pr", "Nd", "Pm", "Sm", "Eu", "Gd", "Tb", "Dy", "Ho", "Er", "Tm", "Yb", "Lu",
           "Hf", "Ta", "W", "Re", "Os", "Ir", "Pt", "Au", "Hg", "Tl", "Pb", "Bi", "Po", "At", "Rn",
           "Fr", "Ra", "Ac", "Th", "Pa", "U", "Np", "Pu", "Am", "Cm", "Bk", "Cf", "Es", "Fm", "Md", "No", "Lr",
           "Rf", "Db", "Sg", "Bh", "Hs", "Mt", "Ds", "Rg"]
 
# seconde liste pour les masse molaires
masseMol = [0, 1, 4, 7, 9, 11, 12, 14, 16, 19, 20, 23, 24, 27, 28, 31, 32, 35, 40,
            39, 40, 45, 48, 51, 52, 55, 56, 59, 59, 64, 65, 70, 73, 75, 79, 80, 84,
            85, 88, 89, 91, 93, 96, 98, 101, 103, 106, 108, 112, 115, 119, 122, 128, 127, 131,
            133, 137, 139, 140, 141, 144, 145, 150, 152, 157, 159, 162, 165, 167, 169, 173, 175,
            178, 181, 184, 186, 190, 192, 195, 197, 201, 204, 207, 209, 209, 210, 222,
            223, 226, 227, 232, 231, 238, 237, 244, 243, 247, 247, 251, 252, 257, 258, 259, 262,
            267, 268, 271, 272, 277, 276, 281, 280]
Télécharger

Nous avons ensuite créé plusieurs petits programmes qui effectues les différentes tâches possibles comme : chercher un symbole dans la liste grâce à son numéro atomique, chercher une masse molaire d'un élément grâce à son symbole puis deux calculs pour chercher une quantité de matière avec soit le symbole de l'élément soit son numéro atomique.

# définition de chaque fonction pour le menu
 
def fonction1() : #permet de trouver le symbole d'un élément grâce à son numéro atomique
    numero = int(input("Entrez le numero atomique : "))
    print("Le symbole de l'élément est", symbole[numero],".")
 
def fonction2() : #permet de calculer une quantité de matière grâce au numéro atomique
    numero2 = int(input("Entrez le numero atomique : "))
    masse = int(input("Entrez la masse en gramme : "))
    mol = masse/masseMol[numero2]
    print("Il y a", mol,"mol.")
 
 
def fonction3() :  #permet de trouver une masse molaire grâce au symbole de l'élément
    symb1 = input("Entrez le symbole de l'élément:")
    i = 0  
    while i < 113 :
        if symbole[i] == symb1 :
            print("La masse molaire est", masseMol[i],"g.mol-1.")
            break
        i = i + 1
 
 
def fonction4() : #permet de calculer une quantité de matière grâce au symbole de l'élément
    masse2 = float(input("Entrez la masse en gramme : "))
    symb2 = input("Entrez le symbole de l'élément : ")
    i = 0  
    while i < 200 :
        if symbole[i] == symb2 :
            mol2 = masse2/masseMol[i]
            print("Il y a", mol2,"mol.")
            break
        i = i + 1

Comme vous pouvez le voir sur le graphique ci-dessus, le nombre de ligne importe peu sur la qualité d’un programme. Au final, c’est celui qui aura réussi à simplifier le plus son programme avec le moins de lignes qui aura utilisé le plus d’astuces !
Vous pouvez d’ailleurs constater que nous avons modifié le code à plusieurs reprises (3 en réalité) dans le but de le rendre plus court.

Conclusion

Ce programme est simple d’utilisation et peut être utilisé par n’importe quel élève de seconde général ou bien des élève de première et terminale ayant pris spécialité physique-chimie.
Malgré la facilité d’utiliser ce programme il ne peut bien évidemment pas remplacer l’apprentissage des formules mais peut tout de même s’avérer utiles.

Je le veux