# LaTeX/Écrire de la physique

LATEX
* Généralités
* Premiers pas
** Installer LaTeX
** Premier exemple
** Lettre
** Éléments de base
** Les classes
** Structuration du texte
** Mise en forme du texte
** Faire des tableaux
** Inclure des images
** Options de mise en forme avancées
** Écrire des mathématiques
** Écrire de la physique
** Écrire des formules chimiques
** Créer une feuille de style
** À l'aide !
* Structure du document
* Gestion de la bibliographie
* Tableaux
* Images
* Éléments flottants
* Mise en forme du texte
* Choix de la police
* Mise en page
* Mathématiques
* Gestion des gros documents
* Faire des présentations
* LaTeX pour enseignants
* Arts et loisirs
** Écrire de la musique
** Dessiner des échiquiers
* Dessiner avec LaTeX
** Dessiner en LaTeX pur
** Dessiner avec PSTricks
** Dessiner avec PGF et TikZ
** Dessiner des molécules
** Réalisation de graphiques mathématiques
* Créer une extension ou une classe
* Programmer avec LaTeX
Annexes
* Vadémécum
* Conversion vers d'autres formats
* Glossaire de typographie
* Index
* Commandes
* Liens externes
La physique nécessite des éléments supplémentaires par rapport aux mathématiques. La plupart de ces éléments sont accessibles dans le mode mathématique, mais ils sont présentés ici. Certaines extensions sont spécifiques à la physique.

## Nombres

L'extension numprint fournit la commande \numprint qui met en forme automatiquement les grands nombres : avant et après le séparateur décimal, les chiffres sont groupés par trois et ces groupes sont séparés par une espace. Par exemple
donne
123 456,789 123
En particulier, hors du mode mathématique, la commande \numprint permet de supprimer l'espace ajoutée après la virgule.

## Mode mathématiques

En mode mathématiques, la commande \mho affiche le symbole du mho, $\mho$, et \hbar affiche $\hbar$.

## Unités
### Extension siunitx

Selon les mots de l'auteur de cette extension, Joseph Wright: CTAN, je cite :
   « Le paquet siunitx prend le meilleur des packages existants et ajoute de nouvelles fonctionnalités et une interface cohérente. Un certain nombre de nouvelles idées ont été intégrées, pour combler les lacunes des packages existants. Le paquet fournit également une compatibilité descendante avec SIunits, sistyle, unitsdef et units. L'objectif est d'avoir un package pour répondre à tous les besoins possibles liés à l'unité aux utilisateurs de LaTeX. »

### Extension SIunits

SIunits est incompatible avec certaines extensions, notamment la commande \square de l'extension amssymb, et la commande \gray de pstricks. Pour éviter les conflits, on peut charger les options squaren et Gray, on utilise alors :
* \square avec amssymb et \squaren avec SIunits ;
* \gray avec pstricks et \Gray avec SIunits.
Ceci permet d'assurer la compatibilité avec du code sans SIunits. Nous considérerons cette hypothèse par la suite.

#### Fonctionnement général

Pour écrire les unités du système international, on dispose de l'extension SIunits ; attention, ici, le « S » et le « I » doivent être en capitales. Les symboles des unités sont alors accessibles par des commandes portant leur nom anglais (par exemple \kilogram, \meter). Ces commandes sont utilisables dans le texte ou dans des formules mathématiques :
On dispose également d'une commande
par exemple
pour avoir « 10 m ». L'avantage est que la typographie est correcte, notamment pour le préfixe µ (micro) : la commande \mu en mode mathématiques donne un caractère italique alors qu'avec \micro il est droit. De plus, cela gère automatiquement les espaces : espace insécable entre le nombre et l'unité, qui n'a pas la même taille que les espaces entre les composantes de l'unité.
Pour les grands nombres, on utilisera
On peut appeler l'extension avec des options :
les principales options permettent de définir le séparateur dans le cas d'une grandeur produit de grandeurs fondamentales, lorsque l'on utilise \usk ou . à l'intérieur du deuxième bloc de \unit :
* cdot (centered dot) : les différentes unités sont séparées par un point centré ;
* thinspace : dans le cas d'une grandeur produit de grandeurs fondamentale, les différentes unités sont séparées par une petite espace ;
* mediumqspace : le nombre et l'unité sont séparés d'une espace moyenne ;
* thickqspace : le nombre et l'unité sont séparés d'une grande espace.
Par exemple :

#### Unités de base

Les unités SI et dérivées sont obtenues simplement en écrivant leur nom anglais précédé de la contre-oblique.
Unités SI dans SIunits :
| Unité | Commande | Résultat |
| kilogramme | \kilogram | kg |
| mètre | \metre, \meter | m |
| seconde | \second | s |
| ampère | \ampere | A |
| kelvin | \kelvin | K |
| mole | \mole | mol |
| candela | \candela | cd |
Les unités dérivées sont : \hertz (Hz), \pascal (Pa), \newton (N), \joule (J), \watt (W), \coulomb (C), \volt (V), \farad (F), \ohm (Ω), \siemens (S), \weber (Wb), \tesla (T), \henry (H), \celsius (°C), \lumen (lm), \lux (lu), \becquerel (Bq), \Gray (Gy), \sievert (Sv).
Un certain nombre d'unités non-Si sont également définies : \angstrom (Å), \arcminute ('), \arcsecond ("), \are (a), \atomicmass (u), \barn (b), \bbar (b), \bel (B), \curie (Ci), \dday (d), \degree (°), \electronvolt (eV), \gal (Gal), \gram (g), \hectare (ha), \hour (h), \liter (L), \litre (l), \minute (min), \neper (Np), \rad (rad), \rem (rem), \roentgen (R), \rperminute (r/min), \tonne (t).

#### Préfixes multiplicatifs

Les préfixes s'utilisent de la même manière. On a donc : \yocto (y, 10$^{-24}$), \zepto (z, 10$^{-21}$), …, \micro (µ, 10$^{-6}$), \milli (m, 10$^{-3}$), \centi (c, 10$^{-2}$), \deci (d, 10$^{-1}$), \deca (da, 10), \hecto (h, 10$^2$), \kilo (k, 10$^3$), \mega (M, 10$^6$), …, \zetta (Z, 10$^{21}$), \yotta (Y, 10$^{24}$).
Si l'on intègre un « d » à la fin du préfixe, cela génère la puissance de 10, par exemple
    \unit{5}{\micro\meter} donne 5 µm, mais
    \unit{5}{\microd\meter} donne 5 10$^{-6}$ m
Si l'on veut mettre un point centré, il faut écrire \unit{5}{.\microd\metre}, mais alors, on a un espace puis un point. On peut utiliser
    $\unit{5 \cdot 10^{-6}}{\meter}$

#### Unités composées

L'extension contient un certain nombre d'unités composées. Il suffit d'utiliser le nom en anglais, en un seul mot, par exemple
* \squaremeter : m$^2$ ;
* \cubicmeter : m$^3$ ;
* \squaremeterpercubicmeter : m$^2$/m$^3$ ;
* \kilogramsquaremeter : kg⋅m$^2$ ;
* \kilogrampersquaremeter : kg/m$^2$ ;
* \kilogrampersquaremeternp : kg⋅m$^{-2}$ ;
* \kilowatthour : kWh ;
On peut aussi composer ses propres unités :
* pour multiplier des unités entre elles, il suffit de les mettre les unes après les autres, elles sont alors accolées ; on peut les séparer par un point « . » ou par la commande \usk (unit skip) pour utiliser le délimiteur défini en option (si l'on a choisi l'option mediumspace, le point sera remplacé par une espace moyenne) ;
* pour placer une barre de fraction, on utilise \per ;
* pour élever à la puissance :
** -1 : on fait précéder l'unité par \reciprocal, par exemple \reciprocal\second pour s$^{-1}$
** 2 : on fait précéder l'unité par \squaren ou suivre par \squared, par exemple \squaren\meter ou \meter\squared pour m$^2$ ;
** 3 : on fait précéder l'unité par \cubic ou suivre par \cubed, par exemple \cubic\meter ou \meter\cubed pour m$^3$ ;
** -2 : on fait précéder l'unité par \rpsquare ou suivre par \rpsquared, par exemple \rpsquare\meter ou \meter\rpsquared pour m$^{-2}$ ;
** -3 : on fait précéder l'unité par \rpcubic ou suivre par \rpcubed, par exemple \rpcubic\meter ou \meter\rpcubed pour m$^{-3}$ ;
** une puissance quelconque : \power{unité}{puissance}, par exemple \power{m}{\mathit{n}} pour m$^n$.
Par exemple
    \unit{25}{\kilogram.\meter \per \squaren \second} donne 25 kg⋅m/s$^2$
    \unit{25}{\kilogram.\meter.\rpsquare \second} donne 25 kg⋅m⋅s$^{-2}$

### Extension sistyle

L'utilisation de l'extension sistyle — ici, le « s » et le « i » sont en bas-de-casse — est beaucoup plus simple que SIunits. On utilise la commande
mais ici, l'unité est composée comme en mode mathématique. Cela est laissé à l'entière responsabilité de l'utilisateur. Par exemple
Le point est remplacé par un point centré ; si l'on veut utiliser le point comme séparateur décimal, on utilise \pnt, par exemple
    \SI{MPa^{0 \pnt 5}} pour (MPa)$^{0.5}$.
La commande \tfrac{dividende}{diviseur} permet d'écrire un rapport d'unités sous la forme d'une petite fraction.
L'extension fournit des commandes pour certaines unités qui ne sont pas des lettres latines :
* \angstrom : Å ;
* \micro : µ ;
* \ohm : Ω ;
* \degC : °C ;
* \degF : °F ;
* \arcdeg : ° ;
* \arcmin : ' ;
* \arcsec : ".
La commande \num*{nombre} formate les nombres, en séparant les groupes de trois chiffres par une espace. Elle fournit également une notation simplifiée des puissances de 10, avec e :
    1e2 donne 1×10$^2$
    - e -0,5 donne -10$^{-0.5}$
Pour avoir la virgule comme séparateur décimal, il faut employer
La commande \num a le même effet, mais utlise des chiffres bas-de-casse (ceux obtenus avec \oldstylenums).
L'extension fournit également une mise en forme des angles :
par exemple
    \ang{3; 2; 1} donne 3°2'1"

## Réactions nucléaires

Pour pouvoir écrire une réaction nucléaire, il est utile de savoir utiliser les instructions d’indices et d’exposants. Sauf qu’il faut les placer avant l’élément concerné et pas après comme en mathématique. Pour cela, il suffit simplement d’écrire l'instruction voulue avant. Par exemple _{6}^{12}C_{6} nous donne $_{6}^{12}C_{6}$. On peut donc facilement écrire des réactions nucléaires complètes en utilisant cette méthode. Ainsi _{7}^{14}N + _{0}^{1}n \longrightarrow _{1}^{1}p + _{6}^{14}C permet d’écrire $_{7}^{14}N+_{0}^{1}n\longrightarrow _{1}^{1}p+_{6}^{14}C$. Il semblerait qu’il soit préférable d’écrire en premier la partie concernant l'indice et ensuite d’écrire la partie concernant l’exposant. Par exemple, on écrira _{6}^{12}C (ce qui nous donne $_{6}^{12}C$) à la place de ^{12}_{6}C (ce qui nous donne $_{6}^{12}C$) ; le rendu est plus parlant.
Quand l'indice et l'exposant n'ont pas le même nombre de caractères --- 1 pour “6” et 2 pour “12” --- on peut les aligner à droite à l'aide de la commande \phantom, comme dans _{\phantom{1}6}^{12}C, qui donnera un résultat plus joli que $_{6}^{12}C$, sans espace sous le “2”.
Il est possible de définir la commande \newcommand{\noyau}[3]{\prescript{#2}{#3}{\mathrm{#1}}} dans l'entête. Le paquet mathtools définit la commande \prescript. On doit donc aussi l'inclure pour pouvoir utiliser cette commande. L'avantage de cette commande est que, par exemple pour le carbone 12, le 6 sera correctement aligné à droite, ce qui n'est pas le cas avec les commandes du paragraphe précédent. Pour écrire un noyau de carbone 12, vous devez simplement taper \noyau{C}{12}{6} dans un environnement mathématique. Il est possible de laisser l'un des paramètres libre en écrivant par exemple \noyau{C}{12} qui afficher $^{12}\mathrm {C}$.

## Notation de Dirac, bra et ket

Pour la physique quantique, les instructions utiles sont \langle pour faire $\langle$, \rangle pour faire $\rangle$ et le tube |.
On peut utiliser l'extension braket, qui fournit
* les commandes \bra, \ket et \braket pour des symboles de taille fixée,
* et les commandes \Bra, \Ket et \Braket pour des symboles extensibles selon leur contenu.
On utilisera comme suit :
On peut aussi choisir de créer soi-même des commandes bra et ket, pour plus de souplesse. Par exemple, on peut mettre dans l'en-tête :
Ainsi, \ket{n_i} donne $|n_{i}\rangle$, \bra{p} donne $\langle p|$ et \bra{u_i} \hat{A} \ket{u_j} donne $\langle u_{i}|{\hat {A}}|u_{j}\rangle$.
On peut ensuite créer de nouvelles commandes utilisant \bra et \ket, par exemple
et donc \uiacuj donne $\langle u_{i}|{\hat {A}}^{\dagger }|u_{j}\rangle$. Ou encore, pour rendre cette dernière commande paramétrable :
par exemple, \elemm{a}{W}{b} donne $\langle a|{\hat {W}}|b\rangle$, et \elemm{a_n^{(1)}}{H_0}{b_p^{(2)}} donne $\langle a_{n}^{(1)}|{\hat {H_{0}}}|b_{p}^{(2)}\rangle$.
Pour écrire un produit scalaire, de la même façon :
et donc \psh{a}{b} donne $\langle a|b\rangle$. Ou encore \psh{x-\ell}{\varphi} qui donne $\langle x-\ell |\varphi \rangle$.
Un joli exemple, pour le plaisir .En plus des commandes ci-dessus, on peut faire du zèle et créer les commandes suivantes
Et alors
donne
$|n\rangle ^{(1)}\sim |n\rangle +\sum _{p\neq n}{\frac {\langle p|{\hat {W}}|n\rangle }{E_{n}^{(0)}-E_{p}^{(0)}}}|p\rangle$
ce qui, sans les macros, s'écrirait in extenso

## Notes

* ↑ dans la documentation Babel du 18 mars 2010, Daniel Flipo recommande l'utilisation de la commande \numprint au lieu de la commande \nombre, voir en bas de page 4.
* ↑ avec l'option Gray lors de l'appel de l'extension
* ↑ avec l'option squaren lors de l'appel de l'extension