---
myst:
html_meta:
keywords: chimie, équation, réaction, mécanisme, électrons
---
# Comment représenter des équations de réaction ?
Pour mettre en forme des équations de réaction, on peut utiliser le package
qui permet très simplement d’écrire des équations bilans.
, son « grand frère », fournit l’ensemble des possibilités
de mais également un grand nombre de commandes
supplémentaires très utiles.
Pour écrire des mécanismes réactionnels, il faudra plutôt se tourner vers le package
.
:::{admonition} Infos
:class: tip
- et ont été créés par le même auteur.
- En utilisant , on peut considérer comme
chargé, et ses commandes disponibles.
- était initialement une partie de mais est
maintenant un pakage à part entière et dispose de sa propre documentation.
:::
## Équation bilan avec /
### Principe de base
Ce package est particulièrement simple d’utilisation. Il fournit la commande `\ch{}` qui
contient la description des formules et du type de flèche.
```
\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{chemmacros}
\usepackage{babel}
\begin{document}
\begin{enumerate}
\item \ch{CH4 (g) + 2 O2 (g) -> CO2 (g) + H2O (g)}
\item \ch{MnO4- (aq) + 8 H+ (aq) + 5 e- = Mn^2+ + 4 H2O (l)}
\end{enumerate}
\end{document}
```
:::{attention}
Bien penser à mettre des espaces entre les nombres stœchiométriques, les états
physiques, et la formule de la molécule.
:::
### Noms des espèces
On peut facilement ajouter le nom des espèces chimiques avec la syntaxe suivante :
```{noedit}
\ch{!()( )}
```
```
\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{chemmacros}
\usepackage{babel}
\begin{document}
\ch{!(Méthane)(CH4 (g)) + !(Dioxygène)(2 O2 (g))
-> !(Dioxyde~de~carbone)(CO2 (g)) + !(Eau)(2 H2O (g))}
\end{document}
```
:::{note}
Par défaut, les chiffres sont placés en indice et les signes en exposants. Pour les
chiffres en exposant, on utilse `^` (les accolades ne sont pas nécessaires).
:::
## Équations bilan avec
Dans cette partie, on suppose la synthaxe de base du package connue.
Si ce n’est pas le cas on pourra se référer à sa documentation ou à la
page dédiée sur la FAQ.
[](/4_domaines_specialises/chimie/representer_des_molecules_avec_chemfig.md)
L’équation bilan doit être comprise entre les commandes `\schemestart` et `\schemestop`
On dispose alors de deux commandes supplémentaires : `\arrow()` et
`\+`.
```
\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{chemfig}
\usepackage{babel}
\begin{document}
\schemestart
\chemfig{CH_3 - C (=[:90]O) - OH}
\+
\chemfig{CH_3 - CH_2 - OH}
\arrow(.mid east--.mid west)
\chemfig{CH_3 - C (=[:90]O) - O - CH_2 - CH_3}
\+
\chemfig{H_2O}
\schemestop
\end{document}
```
:::{note}
Pour aligner la flèche, on a ajouté *entre parenthèses* un argument optionnel à la
commande `\arrow()`.
Pour les molécules linéaires cela devrait être souvent le même. Toutefois, si l’alignement
n’est pas satifaisant, on trouvera d’autre possibilités p. 54 de la
documentation .
::::
## Mécanisme réactionnel avec
### Étape 1 : donner un nom
Pour simplifier, on peut considérer que la première étape est d’attribuer un nom à un
atome ou une liaison avec `@{}` placé :
- juste après pour une liaison ;
- juste avant pour un atome.
```
\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{chemfig}
\usepackage{babel}
\begin{document}
\chemfig{
R-O-C(-[2]R)(-[6]OH)-@{donneur}
\charge{90=\|,-90=\|}{O}H}
\hspace{1cm}
\chemfig{@{accepteur}\charge{
90:3pt=$\oplus$, 180=\"}{H}
}
\end{document}
```
:::{note}
En réalité on définit des nœuds. Pour aller plus loin, se reporter à la
documentation et/ou à celle de
:::
Pour l’instant, on ne voit rien de plus, c’est normal. Mais maintenant que cette étape est
faite, on peut utiliser les deux nœuds nommés comme point de repère pour représenter le
mouvement des électrons.
### Étape 2 : tracer le mouvement des électrons
La macro utilisée pour cela est `\chemmove{}`.
Voici un premier exemple d’utilisation.
```
\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{chemfig}
\usepackage{babel}
\begin{document}
% formules et création de nœuds
\chemfig{
R-O-C(-[2]R)(-[6]OH)-@{donneur}
\charge{90=\|,-90=\|}{O}-H}
\hspace{1cm}
\chemfig{@{accepteur}\charge{
90:3pt=$\oplus$, 180=\"}{H}
}
% mouvement des électrons
\chemmove{
\draw[shorten <=2pt, shorten >=3pt]
(donneur).. controls +(90:1cm) and +(180:1cm).. (accepteur);
}
\end{document}
```
Explications :
- Les arguments optionnels de la commande `\draw` permettent de réduire la
taille de la flèche qui irait sinon jusqu'aux atomes. On réduit ici de
2 points le départ et de 3 points l'arrivée.
- Dans la suite, on définit deux points de contrôle pour la courbure de la
flèche en indiquant *leurs coordonnées polaires* par rapport aux deux nœuds
(*donneur* et *accepteur*).
:::{note}
Pour en savoir plus sur ces points de contrôle, on pourra se référer à la documentation du
package , partie 2.3 (p. 33).
:::
### Exemple complet
Un exemple classique avec l’étape de protonation d’un alcool primaire :
```
\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{chemfig}
\usepackage{babel}
\begin{document}
\schemestart
\chemfig{R - C(=[2]@{donneur}\charge{45=\|,135=\|}{O})
- \charge{90=\|, -90=\|}{O} - H}
\hspace{.5cm}
\+
\hspace{.5cm}
\chemfig{@{accepteur}\charge{180=\", 45:3pt=$\oplus$}{H}}
\arrow(.mid east--.mid west)
\chemfig{R - C(=[2]\charge{180=\|,90:3pt=$\oplus$}{O} - H) - \charge{90=\|, -90=\|}{O} - H}
\schemestop
\chemmove{
\draw[shorten <=3pt, shorten >=3pt]
(donneur).. controls +(45:3cm) and +(180:1cm).. (accepteur);
}
\end{document}
```