Physique-Chimie & NSI

Cours complets et originaux de Physique-Chimie & NSI

C3. Avancement de réaction

Notion d’avancement de réaction

  • Décrire qualitativement l’évolution des quantités de matière des espèces chimiques lors d’une transformation.

Équation-bilan d’une réaction chimique

L’équation-bilan d’une réaction chimique, que vous connaissez depuis longtemps, donne deux informations distinctes :

  • La nature des espèces chimiques mises en jeu au cours de la réaction (réactifs et produits).
  • La proportion en quantité de matière liant toutes ces espèces entre elles.
Exemple : combustion du méthane

Vous connaissez bien cette réaction, que vous avez déjà vu au collège. Le méthane, c’est le « gaz naturel » que l’on utilise pour se chauffer ou pour faire fonctionner certains véhicules.

CH4 + 2O2 ⟶ CO2 + 2H2O

Dans cet exemple, les réactifs sont CH4 et O2 et les produits de la réaction sont CO2 et H2O

Les proportions liant ces différentes espèces chimiques sont :

  • qdm de O2 consommée = 2 × qdm de CH4 consommée
  • qdm de CO2 produite = qdm de CH4 consommée
  • qdm d’eau produite = 2 × qdm de CH4 consommée

Grâce à ces informations, on peut prévoir les qdm de réactif en excès et les qdm des produits formés à la fin de la réaction. C’est l’objet de tout le chapitre. 😊

Définition de l’avancement de réaction

L’avancement de réaction (notée $*x*$) est une grandeur qui indique « combien de fois la réaction s’est faite » et donc les qdm de réactifs consommés et les qdm de produits formés à un stade donné de la réaction. Son unité est la mole.

Reprenons l’exemple de la combustion du méthane.

Avancement
(mol)
qdm CH4 qdm O2 qdm CO2 qdm H2O
consommée produite
0 0 0 0 0
1 1 2 1 2
2 2 4 2 4
$*x*$ $*x*$ 2$*x*$ $*x*$ 2$*x*$

Combustion du méthane

On fait brûler 1,0 kg de méthane. Dans les conditions de l’expérience, le volume molaire des gaz vaut $*V_M*$ = 24 L·mol-1.

Données : $*M_\ce{CH4}*$ = 16 g·mol-1 ; $*M_\ce{H2O}*$ = 18 g·mol-1 ; $*M_\ce{CO2}*$ = 44 g·mol-1

1. Calculer le volume d’air nécessaire à cette combustion (l’air contient 20 % de O2)
2. Calculer les masses de CO2 et d’eau produites.

Tableau d’avancement

  • Établir le tableau d’avancement d’une transformation chimique.
  • Déterminer la composition du système dans l’état final en fonction de sa composition initiale pour une transformation considérée comme totale.
  • Déterminer l’avancement final d’une réaction à partir de la description de l’état final et comparer à l’avancement maximal.
  • Capacité mathématique : utiliser une équation linéaire du premier degré.

Il existe un outil pour pouvoir résoudre simplement l’exercice précédent. Cet outil s’appelle le tableau d’avancement.

TP Simulation numérique de l’avancement d’une réaction

  • Capacité numérique : déterminer la composition de l’état final d’un système siège d’une transformation chimique totale à l’aide d’un langage de programmation.

Objectif : écrire un programme en Python qui prévoit la composition finale d’un système où se déroule une réaction chimique totale.

Rappels concernant quelques bases de Python

  • Créer une variable et lui attribuer une valeur : a = 1
  • Créer une variable calculée à partir d’une autre variable : b = a + 2.5
  • Afficher une variable : print(b)
  • Afficher du texte contenant des variables : print(f"les deux variables sont {a} et {b}")
  • Choisir la plus petite de 2 variables : c = min(a,b)

Partie 1 : combustion du dihydrogène

Soit la réaction :

2H2 + O2 ⟶ 2H2O

1. Compléter le script ci-dessous qui va calculer et afficher les qdm de H2 et de O2 restantes ainsi que la qdm d’eau produite à partir des qdm de H2 et de O2 initiales et de l’avancement $*x*$.


			# valeurs d’entrée
			n1i = 10 # qdm initiale H2
			n2i = 10 # qdm initiale O2
			x = 3    # avancement

			# valeurs à calculer
			n1 = … # qdm H2 pour x
			n2 = … # qdm O2 pour x
			n3 = … # qdm eau pour x

			print("–– État initial (mol) ––")
			print(f"n(H2)i = {n1i} ; n(O2)i = {n2i}")
			print(f"–– État pour un avancement de {x} mol ––")
			print(f"n(H2) = {n1} ; n(O2) = {n2} ; n(H2O) = {n3}")
		

Que se passe-t-il si on prend une valeur de $*x*$ trop grande ? En quoi est-ce un problème d’un point de vue chimique ?

2. Modifiez votre code pour que le programme calcule et affiche la valeur maximale de $*x*$, notée $*x_{\text{max}}*$, ainsi que les qdm des espèces restantes.


			# valeurs d’entrée
			n1i = 10 # qdm initiale H2
			n2i = 10 # qdm initiale O2

			# valeurs à calculer
			x_max = …   # avancement maximal
			n1 = …		# qdm H2 pour x
			n2 = …		# qdm O2 pour x
			n3 = …		# qdm eau pour x

			print("–– État initial (mol) ––")
			print(f"n(H2)i = {n1i} ; n(O2)i = {n2i}")
			print(f"–– État final (mol) ––")
			print(f"x_max = {x_max} ; n(H2) = {n1} ; n(O2) = {n2} ; n(H2O) = {n3}")
		

Partie 2 : cas général

Soit la réaction générale :

$*a*$A + $*b*$B ⟶ $*c*$C + $*d*$D

A, B, C et D sont des espèces chimiques.
$*a*$, $*b*$, $*c*$ et $*d*$ sont les nombres stœchiométriques associés à ces espèces.

Écrire un programme qui va calculer les qdm de A, B, C et D en fin de réaction en fonction des qdm initiales de A et de B et des nombres stœchiométriques $*a*$, $*b*$, $*c*$ et $*d*$.

Écriture du tableau d’avancement

Un tableau d’avancement contient en général 4 lignes et $*n*$+1 colonnes, $*n*$ étant le nombre de réactifs et de produits impliqués dans la réaction.

$*x*$ (mol)
$*a*$A
+
$*b*$B
⟶
$*c*$C
+
$*d*$D
0 $*n_{\text{A}i}*$ $*n_{\text{B}i}*$ $*n_{\text{C}i}*$ $*n_{\text{D}i}*$
$*x*$ $*n_{\text{A}i}-ax*$ $*n_{\text{B}i}-bx*$ $*n_{\text{C}i}+cx*$ $*n_{\text{D}i}+dx*$
$*x*$ = $*x_f*$ $*n_{\text{A}i} -ax_f*$ $*n_{\text{B}i}-bx_f*$ $*n_{\text{C}i} +cx_f*$ $*n_{\text{D}i}+dx_f*$

✋ Il est impératif de bien maîtriser toutes les formules portant sur les qdm pour réaliser un tableau d’avancement.

1e ligne : on précise toujours l’unité de l’avancement (mol, mmol, …). On écrit ensuite l’équation-bilan.

2e ligne : c’est la ligne de l’état initial (l’avancement $*x*$ vaut 0). Les quantités de matière initiale des produits ($*n_{\text{C}i}*$ et $*n_{\text{D}i}*$) valent souvent 0, mais ce n’est pas une obligation. Il est en général demandé de calculer les qdm initiales des produits à partir de grandeur mesurable (masse, volume, concentration…).

3e ligne : pour une valeur quelconque $*x*$. La 2e et la 3e lignes peuvent être fusionnées.

4e ligne : ligne de l’état final ($*x = x_f*$) (voir le paragraphe suivant pour trouver $*x_f*$). Il faut écrire la valeur des qdm finales de réactifs et de produits dans cette ligne, ainsi que la valeur de $*x_f*$. C’est ce qu’on appelle faire un bilan de matière.

Avancement maximal

Pour calculer la valeur de $*x_{\max}*$, il faut trouver la

plus petite valeur de l’avancement

pour laquelle la qdm d’un des réactifs est égale à 0.

Proportions stoechiométriques

On dit que les réactifs sont en proportion stoechiométriques si, pour $*x = x_{\max}*$, tous les réactifs sont épuisés.

Réactions totale et non totale

Certaines réactions ne sont pas totales : elles ne se déroulent pas jusqu’à épuisement d’un des réactifs, mais s’arrêtent avant. On dit que ce sont des réactions non totales ou limitées.
Leur avancement final $*x_f*$ ne peut pas être déduit des qdm initiales de réactifs.
Vous en apprendrez plus là-dessus en terminale. 🧑‍🎓

  • Réaction totale : $*x_f = x_{\max}*$
  • Réaction non totale : $*x_f \lt x_{\max}*$

Oxydation du fer

Le fer (Fe) réagit à chaud avec le dioxygène de l’air pour donner de l’oxyde de fer (III) Fe2O3. On souhaite oxyder 100 g de fer par le dioxgène de l’air. La réaction est totale.

Données : $*M*$(Fe) = 55,8 g·mol-1 ; $*M*$(O)*$ = 16,0 g·mol-1.

1. Quel est le réactif limitant ici ?
2. Construire le tableau d’avancement pour faire un bilan de matière en fin de réaction.
3. En déduire la masse d’oxyde de fer obtenu.

Poudre à canon

peinture médiévale représentant un siège

La poudre noire, ou poudre à canon, un mélange explosif de salpêtre (KNO3), de soufre (S) et de charbon de bois (C). La plupart des historiens pensent que la poudre à canon fut inventée en Chine vers le VIIe siècle.

L’équation de la combustion de la poudre à canon est la suivante :

2KNO3 + 3C + S ⟶ K2S + 3CO2 + N2

Cette réaction est totale.

Au XIVe siècle et XVe siècle, la composition était (en masse) :

  • une partie de soufre (12,5 %)
  • une partie de carbone sous forme de charbon de bois (12,5 %)
  • 6 parties de salpêtre (75 %)

Cette recette était-elle optimale ? Par optimale, on entend qu’il ne reste aucun réactif après la réaction.

Masses molaires en g·mol-1 : $*M*$(K) = 39,1 ; $*M*$(N) = 14,0 ; $*M*$(O) = 16,0 ; $*M*$(C) = 12,0 ; $*M*$(S) = 32,1

Réaction d’estérification

On mélange 10,0 mL d’éthanol C2H6O ($*d*$ = 0,78) et 10,7 mL d’acide éthanoïque C2H4O2 ($*d*$ = 1,05). Il se forme de l’éthanoate d’éthyle (C4H8O2) et de l’eau selon une réaction non totale appelée réaction d’estérification. La qdm finale d’éthanoate d’éthyle vaut 0,11 mol.

1. Calculer l’avancement $*x_f*$ de cette réaction.
2. Calculer l’avancement maximum $*x_{\max}*$ de la réaction, c’est-à-dire l’avancement de la réaction si celle-ci était totale.
3. Quel pourcentage de $*x_{\max}*$ représente $*x_f*$ ?

Révision & entraînement

Composition de l’air

Cet exercice a été donné en devoir en 2020/2021

En 1775, Lavoisier a mis en évidence que l’air était un mélange de gaz et qu’il contenait du dioxygène. Il a fait bouillir 122 g de mercure Hg dans une cornue reliée à une cloche contenant 0,80 L d’air (schéma ci-dessous). Le mercure se recouvre d’une couche rouge : c’est de l’oxyde de mercure de formule HgO, il en a obtenu 2,8 g.

Expérience de Lavoisier, avant chauffage (à gauche) et après chauffage (à droite)

Données

  • $*M*$(Hg) = 200,6 g·mol-1
  • $*M*$(O) = 16,0 g·mol-1
  • Volume molaire d’un gaz dans les conditions de l’expérience : 25 L·mol-1

1. Écrire l’équation-bilan de la réaction chimique entre le dioxygène et le mercure.

2. Calculer la quantité de matière finale d’oxyde de mercure formé.

3. Justifiez que, d’après les résultats de l’expérience, le dioxygène est le réactif par défaut.

4. Dresser le tableau d’avancement de la réaction. La quantité initiale de O2 est inconnue. Vous la noterez $*n_{i\ce{O2}}*$.

5. Donner la valeur de l’avancement final et en déduire la quantité initiale de O2.

6. Calculer la quantité de matière d’air initialement présente dans la cloche et calculer la proportion de dioxygène présent dans l’air.

7. Calculer la masse de mercure restante en fin de réaction.

Correction

1. Hg + ½O2 ⟶ HgO

2. $*n(\ce{HgO})*$ = $*\dfrac mM *$ = 2,8÷216,6 = 12,9 mmol.

3. À la fin de la réaction, il reste du mercure qui n’a pas réagi.

4. Tableau d’avancement

$*x*$ (mol)
Hg
+
½O2
⟶
HgO
0 0,608 $*n_{i\ce{O2}}*$ 0
$*x*$ 0,608 – $*x*$ $*n_{i\ce{O2}}*$ – 0,5$*x*$ $*x*$
$*x_f*$ 0,608 – $*x_f*$ 0 $*x_f*$ = 0,0129

5. $*x_f*$ = 0,0129 mol, donc $*n_{i\ce{O2}}*$ = 0,00646 mol.

6. $*n_{air}*$ = 0,8/25 = 0,032 mol. Proportion de O2 : 0,00646/0,032 = 0,20 (soit 20 %)

7. $*m(\ce{Hg})*$ = (0,608 – 0,0129)×200,6 = 119,4 g

Tableau d’avancement en Python

Cet exercice a été donné en devoir en 2020/2021

Soit la réaction :

2MnO−
4
+ 5H2C2O4 + 6H+ ⟶ 2Mn2+ + 10CO2 + 8H2O

On souhaite écrire un script Python qui permet de prévoir l’état final du mélange, sachant que cette réaction est totale.


			n1 =	# qdm initiale de MnO4-
			n2 =	# qdm initiale de H2C2O4
			n3 =	# qdm initiale de H+
			
			xmax1 = n1/2
			xmax2 = _____
			xmax3 = _____
			xmax = min ( _____ )
			
			n1f = _____
			n2f = ______
			n3f = ______
			n4f = 2*xmax
			n5f = 10*xmax
			n6f = 8*xmax
		

1. À quoi correspondent les lignes 13, 14 et 15 ?

2. Compléter les lignes 6, 7, 8, 10, 11 et 12.

Correction

1. Respectivement qdm finale de Mn2+, CO2 et H2O

2. Lignes à compléter


				6.	xmax2 = n2/5
				7.	xmax3 = n3/6
				8.	xmax = min (xmax1, xmax2, xmax3)
				10.	n1f = n1 – 2*xmax
				11.	n2f = n2 – 5*xmax
				12.	n3f = n3 – 6*xmax