python:programmes_de_physique_chimie_en_python:avancement

Avancement en chimie

especes=["CH4","O2","CO2","H2O"]
 
coefficients=[-1, -2, 1, 2]
 
etat_init = [3., 20., 0., 0.] #quantites initiales en moles
 
etat_inter = etat_init[:]#on initialise l'état intermediaire
 
dksi = 0.0001 #pas
 
x = 0 #avancement initial
 
while etat_inter[0]>0 and etat_inter[1]>0: #tant qu'il y a des réactifs
 
    x = x + dksi
 
    etat_inter[0] = etat_init[0] + coefficients[0]*x
 
    etat_inter[1] = etat_init[1] + coefficients[1]*x
 
    etat_inter[2] = etat_init[2] + coefficients[2]*x
 
    etat_inter[3] = etat_init[3] + coefficients[3]*x
 
print("====== Etat Final ======")
 
for i in range(4):
 
    print(especes[i],": {:.3f}".format(etat_inter[i])) #on affiche le résultat avec 3 chiffres après la virgule
 
print("")
 
print("Avancement final : xf = {:.3f} mol".format(x))

donne

====== Etat Final ======
CH4 : -0.000
O2 : 14.000
CO2 : 3.000
H2O : 6.000

Avancement final : xf = 3.000 mol
  • python/programmes_de_physique_chimie_en_python/avancement.txt
  • Dernière modification : 2020/07/24 03:31
  • de 127.0.0.1