LaTeX/Écrire des formules chimiques
Il existe plusieurs extensions dédiées à l'écriture de la chimie. On peut en trouver plusieurs dans le TeXCatalog.
- Note
- Le dessin des molécules chimiques est décrit au chapitre Dessiner des molécules.
Avec chemist
[modifier | modifier le wikicode]L'extension chemist
fournit des commandes et environnements s'utilisant comme les modes mathématiques, mais affichant les lettres romaines (droites) et non italiques. L'appel de l'extension se fait par
\usepackage{chemist}
Pour une formule dans le texte, on utilise la commande \chemform{formule}
, par exemple
\chemform{Fe_2O_3}
donne
- Fe2O3
L'environnement chemmath
est l'équivalent de \[…\]
(formules centrées), et l'environnement chemeqn
est l'équivalent de l'environnement mathématique equation
(formules centrées numérotées) :
\begin{chemmath}
.
.
.
\end{chemmath}
\begin{chemeqn}
.
.
.
\end{chemeqn}
Pour les équations, on utilise les flèches habituelles : \rightarrow
, \longrightarrow
, \rightleftarrows
, \rightleftharpoons
, … (voir ci-après). Par exemple,
\begin{chemmath}
CH_4 + 2O_2 \longrightarrow CO_2 + 2H_2 O
\end{chemmath}
donne
Notons que cette extension, au moins à ce jour (v2.00a du 3 novembre 2000), modifie le placement des flèches de vecteur dans le mode mathématique, ce qui pose problème avec les capitales (par exemple $\vec{F}$
).
Avec mhchem
[modifier | modifier le wikicode]L'extension mhchem
permet d'écrire simplement des équations de réaction[1], mais pas de dessiner des molécules. L'appel de l'extension au complet se fait par
\usepackage[version=4]{mhchem}
L'option version=4
est importante pour bénéficier de toutes les fonctionnalités.
La commande principale est \ce{formule}
. Notons que :
- les + et - sont placés automatiquement en exposant
\ce{Fe^{2}+}
→ ; on peut aussi utiliser la notation habituelle^{…}
; - les coefficients après des symboles chimiques ou les parenthèses sont placés directement en indice, les coefficients avant sont placés sur la ligne
\ce{2Sb2O3}
→ ; on peut aussi utiliser la notation habituelle_{…}
; - l'écriture des fractions est simple
\ce{1/2H2O}
→ ; - la notation mathématique en indice et exposant est utilisable, y compris avant un symbole chimique, comme pour les isotopes
\ce{^{227}_{90}Th+}
→ ; - la liaison simple se marque avec un
-
ou\sbond
, la double avec un=
ou\dbond
, et la triple avec un#
ou\tbond
; - la flèche de réaction se marque
->
;- on peut mettre du texte au dessus avec
->[texte au dessus]
, - du texte au dessus et en dessous avec
->[texte au dessus][texte en dessous]
;
- on peut mettre du texte au dessus avec
- la double flèche d'équilibre se note
<=>
; - un chapeau
^
entouré de deux espace indique un dégagement de gaz ↑ ; unv
entouré de deux espaces indique une précipitation ↓ ; - un astérisque « * » ou un point « . » est transformé en un point centré « · ».
Par contre, l'extension ne gère pas très bien les formules contenant des coefficients sous forme de lettre, par exemple . Mais on peut mêler les \ce{…}
au sein d'expressions mathématiques, ou des expressions mathématiques au sein d'un \ce{…}
, pour contourner le problème.
Si l'on veut mettre une formule à l'intérieur d'une formule, il vaut mieux utiliser \cf{…}
à l'intérieur du \ce{…}
. La commande \cf{…}
est quasiment équivalente à \ce{…}
.
Par exemple
\ce{CH4 + 2O2 -> CO2 + 2H2O}
$\ce{C}_n \ce{H}_{2n+2} + \frac{3n+1}{2}\ce{O2 ->[\Delta G]} n \ce{CO2} + (n+1)\ce{ H2O}$
\ce{Ag+ + Cl- -> AgCl v}
donnent
Avec ppchtex
[modifier | modifier le wikicode]~Library/texmf
L'extension ppchtex se compose de deux extensions : m-pictex
et m-ch-en
. On place donc dans le préambule
\usepackage{etex} \usepackage{m-pictex,m-ch-en}
(L'extension etex
permet de rajouter des « registres », ce qui peut être nécessaire avec PPCHTeX.)
Une formule en ligne s'écrit sous la forme
\chemical{élément 1, élément 2, …, élément n}
où les éléments peuvent être :
- un atome ou un groupement d'atomes : on utilise la notation chimique classique (
C
pour le carbone,CH_4
pour le méthane) ; - une liaison simple :
-
ouSINGLE
; - une liaison double :
--
ouDOUBLE
; - une liaison triple :
---
ouTRIPLE
; - une espace fine :
\,
; - une flèche de réaction :
->
ouGIVES
; - deux flèches tête-bêche d'équilibre :
<->
ouEQUILIBRIUM
- une double-flèche ↔ :
<>
ouMESOMERIC
; - un plus :
+
ouPLUS
.
Lorsque la formule est dans un environnement mathématique hors paragraphe (\[…\]
ou environnement equation
), on peut placer du texte en dessous des éléments :
\chemical{texte principal}{texte dessous} \chemical{texte principal}{texte dessus}{} \chemical{texte principal}{texte dessus}{texte dessous}
par exemple
\[
\chemical{2H_2}{dihydrog\grave{e}ne} \chemical{+} \chemical{O_2}{dioxyg\grave{e}ne}
\chemical{->}{combustion}{}
\chemical{2H_2O}{eau}
\]
pour obtenir
Si la formule est en texte, on peut placer du texte au dessus de flèches :
\startchemical
\chemical[''flèche''][''texte dessus'']
\endchemical
ou flèche est GIVES
, MESOMERIC
ou EQUILIBRIUM
(on ne peut pas utilise ->
, <>
ou <->
). La flèche est alors considérée comme faisant partie d'une molécule, ce qui donne de grandes espaces avant et après ; par contre, la flèche est plus longue.
\chemical{2H_2} \chemical{PLUS} \chemical{O_2}
\startchemical
\chemical[GIVES][combustion]
\stopchemical
\chemical{2H_2O}
Avec le mode mathématiques
[modifier | modifier le wikicode]Pour écrire des formules chimiques, on peut bien sûr utiliser les mathématiques (voir LaTeX/Écrire des mathématiques), en retenant les points suivants :
- on utilise
\mathrm{…}
pour avoir une écriture en romain ; comme cela concerne tous les symboles chimiques, cela devient vite fastidieux ; - pour les formules semi-développées en ligne, on peut utiliser pour
-
les liaisons simples,=
pour les liaisons doubles et\equiv
pour les liaisons triples ; pour les dessins de molécules, on envisagera d'utiliser un logiciel de dessin et d'intégrer l'image ainsi produite ; - les flèches de réaction sont obtenues par
\rightarrow
,\longrightarrow
et\rightleftarrows
(ou\rightleftharpoons
) ; - avec l'extension
amsmath
, on peut utiliser la flèche\xrightarrow{texte dessus}
,\xrightarrow[texte dessous]{}
et\xrightarrow[texte dessous]{texte dessus}
; - penser aux instructions de placement
\overset{texte dessus}{texte principal}
et\underset{texte dessous}{texte principal}
.
Exemples :
\newcommand{\chimie}[1]{$\mathrm{#1}$}
\newcommand{\chimiecite}[1]{\[\mathrm{#1}\]}
\newcommand{\nchim}{\mathit{n}}
\chimiecite{CH_4 + 2O_2 \longrightarrow CO_2 + 2H_2 O}
\chimiecite{ C_{\nchim} H_{2\nchim+2} + \frac{3\nchim + 1}{2}O_2 \xrightarrow{\Delta G}
\nchim CO_2 + (\nchim+1)H_2 O} \]
\chimiecite{Ag^+ + Cl^- \rightarrow \underset{\searrow}{AgCl}}
donnent
Pour les équations dans le texte, on peut mixer le texte normal et les mathématiques, mais on se prive alors de la possibilité d'utiliser les formules centrées, numérotées ou non (\[…\]
et environnement equation
). Le deuxième exemple devient alors
C$_n$H$_{2n+2} + \frac{3n + 1}{2}$O$_2 \xrightarrow{\enthreac} n$CO$_2 + (n+1)$H$_2$O
Avec chemtex
[modifier | modifier le wikicode]L'extension ChemTeX se trouve à l'adresse suivante :
Les formules chimiques se tapent simplement en mode mathématique comme évoqué ci-dessus.
ChemTeX consiste en des macros de mise en forme. Par exemple, pour tracer une flèche de réaction :
\cto{texte au dessus}{texte en dessous}{longueur}
où longueur est le nombre de caractères du texte le plus grand (indices et exposants compris). Par exemple :
\[ HC \equiv CH + H_{2}O \cto{Hg^{++}}{18\%\ H_{2}SO_{4},\ 90^\circ}{14} CH_{3}-CHO \]
pour
Notes
[modifier | modifier le wikicode]- ↑ Ainsi que les phrases d'avertissement sur les risques chimiques.
Voir aussi
[modifier | modifier le wikicode]Wikilivres
[modifier | modifier le wikicode]Liens externes
[modifier | modifier le wikicode]- Pour dessiner un tableau de classification périodique : Mendeleiev, il pue ?, discussion du 26 août sur news:fr.comp.text.tex