import numpy as np
import matplotlib.pyplot as plt

# Parametres des réactions et condition initiale en USI
k1 = 0.05      # en 1/(mol*s)
kinv1 = 10     # en 1/(mol*s)
k2 = 10        # en 1/(s^2)
nAc = k2/kinv1 # quantité de matière initiale de A critique en mol pour considérer une situation basse/haute pression
nA0 =          # en mol, à compléter 

# Nombre d’iterations, instant final et pas de temps en USI à compléter
n = 
tf = 
dt = tf/(n-1)

# Listes des instants en s
t = [i*dt for i in range(n)]
# Création d’une liste pour les quantités de matière de A en mol
nA = [0 for i in range(n)]

# Initialisation à compléter
nA[0] = 
# Resolution par la methode d’Euler à compléter
for i in range():
    nA[i+1] = 

# Representation graphique 
plt.plot()         # à compléter
plt.xlabel("t (s)")
plt.ylabel("nA (mol)")
plt.title("Mécanisme de Lindemann")
plt.grid()
plt.show()

# Affichage des differentes durees caracteristiques du probleme
print("1/(k1*nA0) en s:",1/(k1*nA0))
print("1/(kinv1*nA0) en s:",1/(kinv1*nA0))
print("1/k2 en s:",1/k2)
print("pas de temps en s",dt)