« LaTeX/Mathématiques » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
Ligne 245 : Ligne 245 :


Le signe de sommation :
Le signe de sommation :
$\exp(x)=\sum_{k=0}^{\infty}\frac{x^k}{k!}$
\[\exp(x)=\sum_{k=0}^{\infty}\frac{x^k}{k!}\]
donne
donne
: <math>\exp(x)=\sum_{k=0}^{\infty}\frac{x^k}{k!}</math>
: <math>\exp(x)=\sum_{k=0}^{\infty}\frac{x^k}{k!}</math>
(<code>\infty</code> donne le signe infini).
(<code>\infty</code> donne le signe infini).

Remarque: ceci est valable pour le mode "mathématiques affichées" (hors-texte et centrées). Dans le mode "mathématiques en ligne" (dans le texte, ouvert par \( ou $ et fermé par \) ou $), les bornes n'apparaissent pas sous et sur le symbole, mais respectivement en indice et en exposant. Pour obtenir le bon résultat, il faut utiliser la commande <tt>\sum\limits_{borne inf}^{borne sup}</tt>. Le mot-clé <tt>\limits</tt> indique que l'indice doit être en réalité placé ''dessous'' et l'exposant ''dessus''.
Ce mot-clé fonctionne avec tous les grands opérateurs (\sum, \prod etc.) décrits ci-dessous.


=== Produits ===
=== Produits ===

Version du 30 mars 2008 à 12:33

Table des matières - Généralités - Premiers pas - Structure du document - Gestion de la bibliographie - Tableaux - Images - Éléments flottants et figures - Mise en forme du texte - Choix de la police - Mise en page - Mathématiques - Gestion des gros documents - Faire des présentations - Arts et loisirs - Dessiner avec LaTeX - Créer une extension ou une classe - Programmer avec LaTeX - Annexes - Vade mecum - Conversion - Glossaire de typographie - Index - Commandes - Liens externes

L'une des plus grandes motivations de Donald Knuth lorsqu'il a développé le système TeX fut de créer un logiciel permettant la création aisée de formules mathématiques, tout en ayant un résultat à l'impression de qualité professionnelle. Le fait qu'il ait réussi fut probablement la cause du succès de TeX (et plus tard Latex) au sein de la communauté scientifique. TeX fut ainsi le langage le plus utilisé pour restituer des formules mathématiques complexes à l'écran d'un ordinateur.

Mais le langage reste difficile à appréhender du fait du grand nombre de symboles mathématiques existants. Ainsi ce sera le sujet que nous nous efforcerons d'aborder ici : acquérir les bases du Latex.

Les environnements mathématiques

LaTeX doit savoir à l'avance si le texte à traiter contient ou non des éléments mathématiques car il compose les notations mathématiques différemment du texte normal : la police change (bien que par défaut elle ressemble à celle du texte) ainsi que l'espacement (« ab » correspond à « a multiplié par b » et non à une syllabe d'un mot), …

Des environnements spéciaux ont donc été définis à cette fin. Ils peuvent être répartis en deux catégories selon la façon dont ils sont présentés et peuvent apparaître

  • dans le texte, au sein d'un paragraphe : les formules mathématiques sont affichées dans une ligne, c'est-à-dire dans le corps du texte là où elles sont écrites, par exemple dans la phrase « nous en déduisons que a+a=2a, après simplification. » ;
  • de façon isolée (mode mathématique isolé, displayed en anglais), en dehors d'un paragraphe : les formules affichées sont séparées du texte principal, elles sont centrées sur la page ou la colonne (ou du moins, s'il y a plusieurs lignes, la ligne la plus grande est centrée).

Les équations hors paragraphe, isolées, peut être numérotées ; outre le fait que LaTeX numérote de manière automatique, si l'on place une étiquette \label{…} dans l'équation, la référence à cette étiquette (\ref{…}) donne le numéro de l'équation.

Il existe donc plusieurs environnements mathématiques, qui ont une forme « abrégée » :


Type Environnement Abréviation LaTeX Abréviation Tex
dans le texte \begin{math}…\end{math} \(…)\ $…$
mode hors paragraphe \begin{displaymath}…\end{displaymath} \[…]\ à proscrire
mode hors paragraphe numéroté \begin{equation}…\end{equation} aucune

Note
On voit dans de nombreux documents l'utilisation de $$…$$. Cette forme est à proscrire : elle donne un espacement incorrect et ne gère pas les options de classes [1]. Par exemple, cette forme ne supporte pas les équations de nombre du côté gauche (classe fleqn).

Si l'on utilise l'extension amsmath, les modes hors paragraphe numéroté et non-numéroté sont équivalents, excepté la présence ou l'absence de numérotation. Si l'on n'utilise pas amsmath, les deux modes ne gèrent pas l'espacement vertical de la même manière.

Donnons tout de suite quelques exemples.

Le code $\sqrt{\frac{x^2}{3}}$ va insérer la formule mathématique dans un texte.

Autre exemple : \[\sqrt{\frac{x^2}{3}}]\. Cet exemple va afficher la même formule, sauf qu'elle va être centrée sur une nouvelle ligne.

\begin{document}
  Voici la fonction $\sin x$,
  la fonction \[\cos x=\sum_{k=0}^{\infty}\frac{(-1)^k}{(2k)!}x^{2k+1}]\
  et la fonction $\tan x$\ldots
\end{document}

va donner le résultat suivant :

Voici la fonction , la fonction


et la fonction tangente

Autre différence avec la balise \[…]\ par rapport à la balise $…$ :

  • $\sum_{k=0}^2$ va donner
2
k=0
  • alors que \[\sum_{k=0}^2]\ va donner


Que faut-il écrire dans les balises $…$ et \[…]\ ?

Regardons premièrement, les puissances (exposants) et les indices des variables. Ceci est très simple, vous allez voir. Exemple, pour insérer , il suffit d'entrer le code LaTeX suivant : $x_i^2$. Le symbole « ^ » met le caractère suivant en exposant, alors que le caractère « _ » (tiret de soulignement) le met en indice. Pour mettre un groupe de caractères ou toute une fonction en exposant (ou indice) il suffit d'utiliser les balises de groupes { et } (accolades). Par exemple, $x^{x^2}$ va afficher

Les symboles

Les mathématiques utilisent beaucoup de symboles. Si il y bien une difficulté en Latex c'est de se rappeler la façon dont les produire. Il y a bien sûr un ensemble de symboles directement accessibles à partir du clavier:

+ - = ! / ( ) [ ] < > | ' :

En dehors de ceux-ci, différentes commandes doivent être appelées pour afficher les symboles désirés. Et il existe beaucoup de lettres grecques, de symboles relationnels et ensemblistes, de flèches, d'opérateurs binaires, etc. Un très grand nombre de symboles à apprendre, et en fait, ils surchargeraient ce cours d'instruction si j'essayais de les énumérer tous. Par conséquent, vous pouvez consulter un document complet de référence à [tutorial9/symbols.pdf symbols.pdf]. Nous verrons naturellement certains de ces symboles utilisés dans tout ce cours.

Multiplication

Plusieurs symboles sont habituellement utilisés pour représenter les produits.

Il est possible de placer un point entre les deux nombres comme dans l'exemple : $x \cdot y\ $ ce qui donne . Notez bien que la multiplication utilise le point centré (\cdot) et non pas un point normal.

La multiplication peut aussi être représentée par le symbole « \times » qui signifie « fois ». Par exemple, $x \times y$ donne le résultat suivant : .

Fractions

Pour créer une fraction, vous devez utiliser la commande \frac{num\acute{e}rateur}{d\acute{e}nominateur}. Ce qui donne :

(Pour ceux qui ont besoin d'un moyen mnémotechnique, il suffit de retenir de haut en bas tout simplement.) Pour pouvez également imbriquer des fractions dans des fractions, comme le montrent les exemples ci-dessous:

\frac{x+y}{y-z}

\frac{\frac{1}{x}+\frac{1}{y}}{y-z}

Remarque: TeX fournissait une variante, la commande \over. Cependant, son usage est relativement malheureux car il place tout ce qui le précède au numérateur et tout ce qui le suit au dénominateur. Les cas où il peut être utile sont les fractions simples dans le texte, du type:

1+x \over 2

Puissances et indices

Les puissances et les indices sont les équivalents mathématiques des indices supérieurs et inférieurs dans un texte normal. Le caractère chapeau « ^ » est utilisé pour élever quelque chose, et celui de soulignement « _ » pour abaisser. Voyons un exemple qui montre comment les utiliser:

Puissance x^n

x^{2n}
Indice n_i
n_{ij}

Remarque: s'il y a plus d'un caractère à élever (ou à abaisser) alors vous devez les grouper en utilisant les accolades ({…}).

De plus, si vous avez besoin d'assigner en même temps, à la même entité, une puissance et un indice, alors cela peut être réalisé de la manière suivante :

x^{2i}_{3j}

ou

x_{3j}^{2i}

l'ordre n'ayant pas d'importance.

Racines

Typiquement, et presque tout le temps, vous êtes amenés à utiliser la racine carrée, qui est obtenue facilement en utilisant la commande suivante : \sqrt{x}. Bien que \sqrt vienne de square root qui signifie « racine carrée », la commande peut être généralisée pour produire une racine de n'importe quelle ordre :

\sqrt[n]{param}

LaTeX s'assure automatiquement que la taille du symbole racine s'ajuste à la taille du contenu.

Si le paramètre n est omis, LaTeX produira une racine carrée.

Parenthèses

L'utilisation des parenthèses devient très rapidement importante même dans les relations les plus insignifiantes. Sans les parenthèses, les formules peuvent devenir ambiguës. En outre, les types particuliers de structures mathématiques, telles que les matrices, se fondent typiquement sur des parenthèses pour les englober.

Vous pouvez vous rappeler que vous avez déjà les symboles du () [] à votre disposition, qui devraient être adaptés aux besoins de la plupart des rédacteurs. Ainsi pourquoi avons nous besoin d'un paragraphe dédié aux parenthèses ? Bien, je pense que la réponse est contenue dans l'exemple suivant:

\[ (\frac{x^2}{y^3}) \]

\[ \left(\frac{x^2}{y^3}\right) \]

Le premier exemple montre ce qui se produirait si vous employiez les caractères standards de parenthèses. Comme vous pouvez le voir, ils conviendraient à une simple équation qui tiendrait sur sur une seule ligne (par exemple, (3 + 2) x (10-3) = 35) mais pas à des équations ayant une plus grande taille verticale, comme celles comportant des fractions. Le deuxième exemple illustre la manière dont Latex fait face à ce problème.

Les commandes \left... et \right... permettent d'adapter automatiquement la taille des parenthèses. Vous devez faire précéder les deux délimiteurs de ces commandes. Les points après la commande devront être remplacés par un des caractères selon le modèle de parenthèse voulu.

Il existe en fait beaucoup plus de symboles possibles qui peuvent être employés à la place des crochets, mais sont quelque peu rares. Consultez par exemple le tableau 5 de la référence de symboles ([tutorial9/symbols.pdf symbols.pdf]) pour les autres caractères. En voici quelques-uns:

  • () (parenthèses simples)
  • [] (crochets)
  • | (barre verticale)
  • \| (barre verticale double)
  • \{ \} (accolade ouvrante et fermante).
  • . (délimiteur nul, voir Remarque ci-dessous)

Attention, en Latex, { et } sont interprétés: écrire {x+1} produit le résultat : pas d'accolades. Pour les caractèes { et }, il faut utiliser \{ et \}, par exemple \{x+1\} produit le résultat . Une autre solution est d'utiliser le paquet nath, qui fournit des délimiteurs s'adaptant automatiquement à la taille.

Remarque: pour utiliser un délimiteur d'un seul côté (par exemple mettre une accolade devant deux ou trois équations empilées), il faut utiliser le délimiteur nul qu'est le point: \left. \right.. Par exemple:

\left\{
  \begin{array}{rcr}
    x+2y & = & -1 \\
    -x+4y & = & 0 \\
  \end{array}
\right.

(voir la section Matrices pour plus d'explications sur l'environnement array)

Les fonctions mathématiques

Code LaTeX Aperçu
\sin
\cos
\tan
\arcsin
\arctan
\arccos
\exp

Sommes

Le signe de sommation :

\[\exp(x)=\sum_{k=0}^{\infty}\frac{x^k}{k!}\]

donne

(\infty donne le signe infini).

Remarque: ceci est valable pour le mode "mathématiques affichées" (hors-texte et centrées). Dans le mode "mathématiques en ligne" (dans le texte, ouvert par \( ou $ et fermé par \) ou $), les bornes n'apparaissent pas sous et sur le symbole, mais respectivement en indice et en exposant. Pour obtenir le bon résultat, il faut utiliser la commande \sum\limits_{borne inf}^{borne sup}. Le mot-clé \limits indique que l'indice doit être en réalité placé dessous et l'exposant dessus. Ce mot-clé fonctionne avec tous les grands opérateurs (\sum, \prod etc.) décrits ci-dessous.

Produits

Le signe de produit :

$n!=\prod_{k=1}^n k$

donne

.

Intégrales

L'intégrale :

$\int_a^b f(x)dx\,$

donne

(le code « \, » insère une espace fine).

Matrices

Latex n'a pas une commande particulière pour créer une matrice. Il dispose à la place d'un environnement un peu plus général, appelé tableau ou array. L'environnement array est fondamentalement équivalent à l'environnement table (voyez [latextutorial4.html didacticiel 4] pour vous remémorer la syntaxe d'une table). Les rangées sont paramétrables, et peuvent être employées dans beaucoup de cas de figure, mais nous nous concentrerons sur les matrices. Vous pouvez employer les tableaux pour placer et aligner vos données comme vous voulez, et ensuite l'entourer avec des parenthèses gauches et droites appropriées pour obtenir votre matrice. Pour une matrice (2, 2) simple:

\[ \left(
  \begin{array}{ c c }
     1 & 2 \\
     3 & 4
  \end{array} \right)
\]


Voyons encore un autre exemple:

$\begin{array}{l|cr}1 & 2 & 3\\ \hline 4 & 5 & 6\\ 7 & 8 & 9\\\end{array}$

va donner

1|23
-+--
4|56
7|89

(en plus joli bien sûr). Après la déclaration de l'environnement, il faut insérer le type et le nombre de colonnes. Ici, {l|cr} :

  • l : les éléments de la colonne sont alignés à gauche (comme align=left en HTML) ;
  • c : les éléments de la colonne sont centré sur la colonne (comme align=center en HTML) ;
  • r : les éléments de la colonne sont alignés à droite (comme align=right en HTML) ;
  • | : insert un trait vertical entre deux colonnes.

À l'intérieur de l'environnement, on peut trouver les codes suivants :

  • \hline : insert une ligne horizontale sur toute la largeur du tableau ;
  • & : passe à la colonne suivante (comme <td> en HTML) ;
  • \\ : passe à la ligne suivante (comme </tr> en HTML).

Pour une documentation plus approfondie sur les tableaux, allez voir la fonction : [2]

Si vous incluez beaucoup de mathématiques dans vos documents, alors probablement vous vous apercevrez rapidement que vous souhaitez avoir un peu plus de contrôle sur la présentation. Certaines possibilités rendent l'écriture des formules plus complexes — mais qui a dit que la composition des mathématiques était facile ?

Les caractères grecs

Code LaTeX Aperçu
\alpha
\beta
\gamma
\delta
\eta
\theta
\vartheta
Code LaTeX Aperçu
\pi
\sigma
\tau
\omega
\phi
\varphi
Code LaTeX Aperçu
\Pi
\Sigma
\Tau
\Omega
\Phi
Je pense que vous avez compris le principe. Je ne vais donc pas tous les énumérer (pour l'instant).

Ajouter du texte dans les formules

Je doute que ce soit tous les jours que vous aurez besoin d'inclure du texte dans une formule. Cependant, il arrive parfois que ce soit nécessaire. Un simple collage d'un texte directement dans l'environnement mathématique ne vous donnera pas les résultats que vous attendez. Par exemple:

\[
  50 pommes \times 100 pommes = beaucoup de pommes^2
\]

ou

\[
  5 \acute{e}l\acute{e}phants + 4 \acute{e}l\acute{e}phants=  9 \acute{e}l\acute{e}phants
\]


Il y a deux problèmes visibles. Premièrement, il n'y a aucun espace entre les nombres et le texte, ni d'espaces entre les mots entre eux. Deuxièmement, les mots n'apparaissent pas correctement; les lettres sont davantage espacées par rapport à la normale. Cela vient du fait que ce sont simplement des objets façonnés du mode mathématique qui n'attend pas ces mots. Tous les espaces que vous saisissez en mode mathématique sont ignorés et Latex espace les éléments selon ses propres règles. Il suppose que tous les caractères représentent des noms de variable. Pour montrer que chaque symbole est individuel, ils ne sont pas placés les uns à côté des autres aussi étroitement que dans du texte normal.

Il y a un certain nombre de manières selon lesquelles le texte peut être ajouté correctement. La manière typique est d'envelopper le texte avec la commande \mbox{...}. Cette commande n'a pas été présentée avant, cependant son travail est fondamentalement de créer une boîte juste assez large pour contenir le texte considéré. Le texte placé dans cette boîte ne peut pas être cassé sur plusieurs lignes. Voyons ce qui se produit quand le code de la formule ci-dessus est adapté :

Le texte a un meilleur aspect. Cependant, il n'y a aucun espace entre les nombres et les mots. Malheureusement, vous êtes contraints d'ajouter vous-mêmes ces derniers. Il y a de nombreuses façons d'ajouter des espaces entre les objets mathématiques, mais pour la simplicité, je trouve plus facile, au moins dans ce cas, d'insérer directement un caractère d'espace dans la boîte \mbox(s) elle-même (juste avant le texte).

\[
  50 \mbox{ pommes} \times 100 \mbox{ pommes} = 
  \mbox{beaucoup de pommes}^2
\]

La mise en caractère romain dans les formules

Il est une convention d'écrire les variables en italique (cela se fait par défaut, ex. : $x^2$). On peut mettre du texte en romain. Par exemple,

$p_\mathrm{ext}$

va donner

.

Les fonctions s'écrivent également en romain ; les fonctions les plus courantes possèdent leur abréviation.

Mise en forme du texte

Employer \mbox permet de résoudre correctement le problème de base. Cependant, il y a une alternative qui offre un peu plus de flexibilité. Vous pouvez relire le cours [latextutorial7.html Didacticiel 7 (Formatting)], l'introduction aux commandes de modification de forme de police, comme \textrm, \textit, \textbf, etc. Ces commandes écrivent leur paramètre en utilisant une certaine forme de police, et par exemple \textbf{texte en caractères gras} donne texte en caractères gras. Ces commandes sont également valables dans un environnement mathématique et permettent d'inclure du texte. L'avantage supplémentaire ici est que vous pouvez avoir un meilleur contrôle de la forme de la police de caractères, plus qu'avec du texte normal inséré avec \mbox.

\begin{equation}
  50 \textrm{ pommes} \times 100 \textbf{ pommes} = 
  \textit{beaucoup de pommes}
\end{equation}

Cependant, comme cela est le cas pour Latex, il y a plus d'une façon de tondre un chat! Il existe des commandes de modification de forme de police très semblables à celles utilisées précédemment, sauf qu'elles sont précisément conçues pour écrire du texte en mode mathématique. Alors pourquoi s'embêter à vous montrer comment utiliser \textrm et les autres si on peut trouver les équivalents en mode maths ? Bien, c'est parce qu'elles sont subtilement différentes. Les commandes de changement de forme de police en mode mathématique sont:

Commande Forme de police Exemple
\mathrm{...} Roman
\mathit{...} Italic
\mathbf{...} En gras
\mathsf{...} Sans serif
\mathtt{...} Typewriter Fichier:Formepolicemaths5.png
\mathcal{...} Calligraphie

Les commandes de changement de forme de police mathématique peuvent s'appliquer à une formule entière, et pas simplement un seul élément textuel: elles mettent en forme uniquement les lettres, les nombres, et les lettres majuscules grecques, mais le reste des objets mathématiques est ignoré. Ainsi, généralement, il vaut mieux employer les les commandes spécifiques de maths s'il y a lieu. Notez que l'exemple de calligraphie donne un rendu plutôt étrange. C'est parce que pour les lettres, il exige des caractères majuscules. Les lettres restantes sont transformées en symboles spéciaux.

Changement de la taille des formules

Probablement un événement rare, mais il pourrait arriver que vous préféreriez disposer d'une commande pour changer la taille des caractères. Par exemple, en utilisant le mode texte en mode mathématique, par défaut une simple fraction ressemblera à ceci et vous aimeriez certainement la voir plus grande, comme dans le mode mathématique isolé par exemple, comme ceci: . Une solution simple est d'utiliser les tailles prédéfinies pour les objets mathématiques:

\displaystyle Taille pour les formules en mode mathématique isolé
\textstyle Taille pour les formules en mode texte
\scriptstyle Taille pour les indices supérieurs/inférieurs
\scriptscriptstyle Taille pour les indices supérieurs/inférieurs des indices

Un exemple classique pour illustrer cela est celui des fractions continues. Examinons le code suivant:

\begin{equation}
  x = a_0 + \frac{1}{a_1 + \frac{1}{a_2 + \frac{1}{a_3 + a_4}}}
\end{equation}

Fichier:Tailleformule3.png


Comme vous pouvez le voir, les fractions continues deviennent plus petites au fur et à mesure (bien qu'elles ne le deviennent pas indéfiniment dans l'exemple), et atteignent la taille limite de \srciptscriptstyle. Si vous voulez garder une taille acceptable, vous pouvez définir chaque fraction en utilisant le style mathématique isolé à la place.

\begin{equation}
  x = a_0 + \frac{1}{\displaystyle a_1 
          + \frac{1}{\displaystyle a_2 
          + \frac{1}{\displaystyle a_3 + a_4}}}
\end{equation}

Fichier:Tailleformule4.png

Une autre solution est d'employer la commande \DeclareMathSizes permettant de sélectionner vos tailles préférées. Vous pouvez seulement définir des tailles pour les style \displaystyle}, \textstyle, etc. Un inconvénient de cette commande est que les tailles des caractères en mode mathématiques ne peuvent être fixées que globalement, car elle ne peut être utilisée que dans le préambule du document.

Cependant, il est assez facile d'employer: \DeclareMathSizes{ds}{ts}{ss}{sss}, où ds représente la taille d'affichage (display size), ts est la taille du texte (text size), etc. Les valeurs que vous donnez pour définir la taille sont supposées représenter un nombre de points (pt). Dans le [tutorial10/mathsize2.pdf example document (mathsize2.pdf)], les tailles des maths ont été rendues beaucoup plus grandes que nécessaire afin de mettre en évidence les changements intervenus. NOTE: les changements ont lieu uniquement si la valeur du premier paramètre correspond exactement à la taille courante des textes de document. Il est donc fréquent de voir un ensemble de déclarations communes dans le préambule, lorsque la police principale est changée. Par exemple,

\DeclareMathSizes{10}{18}{12}{8}   % Pour un texte de taille 10 
\DeclareMathSizes{11}{19}{13}{9}   %  Pour un texte de taille 11
\DeclareMathSizes{12}{20}{14}{10}  %  Pour un texte de taille 12

Équations multi-lignes (environnement eqnarray)

Imaginez que vous ayez une équation que vous vouliez la manipuler, par exemple, pour la simplifier. Souvent cela s'effectue après un certain nombre d'étapes en aidant le lecteur à comprendre comment obtenir à partir de l'équation originale le résultat final. Cela devrait être une tâche relativement simple, mais nous verrons, que les commandes utilisées dans le cours précédent pour écrire des mathématiques ne sont pas adaptées. En utilisant ce que nous savons jusqu'ici nous avons: Fichier:Multiligne1.png Le résultat obtenu est plutôt laid. Le moyen d'afficher les divers éléments en les alignant est d'utiliser une table, et d'y placer les équations en ligne. Allons y:

\begin{tabular}{ r l }
\(10xy^2+15x^2y-5xy\) & \(= 5\left(2xy^2+3x^2y-xy\right)\) \\
 & \(= 5x\left(2y^2+3xy-y\right)\) \\
 & \(= 5xy\left(2y+3x-1\right)\)
 \end{tabular}

Fichier:Multiligne2.png

Cela ne donne pas un résultat trop mauvais. Peut-être que l'espace supplémentaire entre le membre gauche de l'équation et le signe égal est plus grand que l'espace du côté droit et ne donne pas une apparence parfaite. Cela peut être rectifié en ajoutant une colonne supplémentaire et en mettant le signe égal dans la colonne centrale:

\begin{tabular}{ r c l }
  \(10xy^2+15x^2y-5xy\) & \(=\) & \(5\left(2xy^2+3x^2y-xy\right)\) \\
   & \(=\) & \(5x\left(2y^2+3xy-y\right)\) \\
   & \(=\) & \(5xy\left(2y+3x-1\right)\)
\end{tabular}

Fichier:Multiligne3.png

C'est beaucoup mieux. Un autre problème est que l'espace vertical entre les lignes fait apparaître les équations un peu trop serrées sur le côté droit. Il serait souhaitable d'ajouter un petit espace pour que les lignes dans la table soient un peu plus grandes. (vous devez ajouter \usepackage{array} dans votre préambule pour réaliser ce travail.)

% Augmente la taille verticalement. Nécessite le paquet tableau. Voir le préambule.

\setlength{\extrarowheight}{0.3cm}

Fichier:Multiligne4.png

Cependant, par ce moyen nous avons dû effectuer beaucoup trop de travail, et il reste un inconvénient important ou bout du compte. Vous ne pouvez pas numéroter les équations. Puisqu'une fois que vous êtes dans l'environnement tabular, vous pouvez seulement employer le type intégré d'affichage de maths. Pour la numérotation des équations, vous devez employer le paquet du mode d'affichage equation, mais vous ne pouvez pas dans cet exemple. C'est là que eqnarray devient extrêmement utile.

eqnarray, comme le nom le suggère provient du paquet array} qui est fondamentalement un environnement simplifié de tabular. Le paquet array fut introduit dans le [latextutorial9.html tutorial 9 (Mathematics I)] pour former des matrices. Voici un exemple d'utilisation d'eqnarray:

\begin{eqnarray}
  10xy^2+15x^2y-5xy & = & 5\left(2xy^2+3x^2y-xy\right) \\
   & = & 5x\left(2y^2+3xy-y\right) \\
   & = & 5xy\left(2y+3x-1\right)
\end{eqnarray}

Fichier:Multiligne5.png

Comme vous pouvez le voir, tout est bien présenté et organisé comme prévu. Bien, sauf que chaque rangée du tableau a reçu son propre numéro d'équation. Tandis que cette possibilité est utile dans certains cas, elle n'est pas requise ici, seulement un numéro suffira. Pour supprimer des numéros d'équation d'une rangée donnée, ajoutez la commande \nonumber juste avant la commande de fin de ligne (\\).

\begin{eqnarray}
  10xy^2+15x^2y-5xy & = & 5\left(2xy^2+3x^2y-xy\right) \nonumber \\
   & = & 5x\left(2y^2+3xy-y\right) \nonumber \\
   & = & 5xy\left(2y+3x-1\right)
\end{eqnarray}

Fichier:Multiligne6.png

Si vous ne voulez pas du tout de numéro d'équation, alors plutôt que d'ajouter la commande \\nonumber à chaque rangée, employez la version étoilée de l'environnement c'est-à-dire \begin{equarray * }... \end{equarray*}.

Note: il y a une limite de 3 colonnes dans l'environnement de eqnarray. Si vous avez besoin de davantage de flexibilité, vous ferez mieux d'utiliser les paquets de Maths AMS.

Casser les longues équations

D'abord voyons un exemple de longue équation (note: lorsque vous visualiserez l'exemple de document de cette rubrique, vous verrez que cette équation est en fait plus large que la largeur du texte. Ce n'est pas si évident que cela sur cette page Web)

Fichier:Longeqns1.png

Latex ne casse pas les longues équations pour les faire entrer dans les marges comme il le fait avec le texte normal. Ainsi, il vous appartient de composer l'équation convenablement (si elle déborde la marge). Ceci exige typiquement une certaine utilisation créatrice d'eqnarray afin d'obtenir des objets découpés sur une nouvelle ligne et bien alignés. Par exemple,

\begin{eqnarray*}
  \left(1+x\right)^n & = & 1 + nx + \frac{n\left(n-1\right)}{2!}x^2 \\
  & & + \frac{n\left(n-1\right)\left(n-2\right)}{3!}x^3 \\
  & & + \frac{n\left(n-1\right)\left(n-2\right)\left(n-3\right)}{4!}x^4 \\
  & & + \ldots
\end{eqnarray*}

Fichier:Longeqns2.png

Il se peut juste que je sois plus attentif à ce genre de choses, mais vous pouvez noter qu'à partir de la deuxième ligne, l'espace entre le plus initial et la fraction suivante est (légèrement) plus petit que la normale. (Observez la première ligne, par exemple.) C'est dû au fait que le Latex traite les signes + et – de deux façons différentes. Le plus souvent ils les considère comme un opérateur binaire. Quand deux objets mathématiques apparaissent de l'un ou l'autre des côtés du signe, il suppose qu'il un opérateur binaire, et attribue un certain espace de chaque côté du signe. La manière alternative est une désignation de signe; lorsque vous énoncez qu'une certaine quantité mathématique est positive ou négative. Comme en maths, on assume que de tels objets sont positifs à moins qu'un signe le précède. Dans cet exemple, vous voulez que le signe apparaisse près de l'élément approprié pour montrer leur correspondance. C'est l'interprétation pour laquelle Latex a opté dans l'exemple ci-dessus. Pour ajouter la place nécessaire, vous pouvez insérer un caractère invisible en utilisant {}, comme nous le montrons ci-après:

\begin{eqnarray*}
  \left(1+x\right)^n & = & 1 + nx + \frac{n\left(n-1\right)}{2!}x^2 \\
  & & {} + \frac{n\left(n-1\right)\left(n-2\right)}{3!}x^3 \\
  & & {} + \frac{n\left(n-1\right)\left(n-2\right)\left(n-3\right)}{4!}x^4 \\
  & & {} + \ldots
\end{eqnarray*}

Fichier:Longeqns3.png

Une autre solution serait d'éviter ce problème en laissant le symbole + à l'extrémité de la ligne précédente plutôt que de le placer au début de la ligne courante: Fichier:Longeqns4.png Latex supporte une autre convention d'écriture des longues équations. C'est la manière qui est la plus fréquemment utilisée pour composer de longues équations dans les livres et les articles, et c'est évidemment ma manière préférée de les écrire. L'utilisation d'eqnarray, conjointement avec la commande \lefteqn{... } placée autour du contenu précédant le signe = donne le résultat suivant:

\begin{eqnarray*}
  \lefteqn{\left(1+x\right)^n = } \\
  & & 1 + nx + \frac{n\left(n-1\right)}{2!}x^2 + \\
  & & \frac{n\left(n-1\right)\left(n-2\right)}{3!}x^3 + \\
  & & \frac{n\left(n-1\right)\left(n-2\right)\left(n-3\right)}{4!}x^4 + \\
  & & \ldots
\end{eqnarray*}

Fichier:Longeqns5.png

Notez que la première ligne du eqnarray contient uniquement \lefteqn. Et avec cette commande, il n'y a aucun séparateur de colonne (&). La raison pour laquelle cette commande affiche les objets comme il se doit est que la commande \lefteqn imprime l'argument, en indiquant à Latex que la largeur est nulle. Le contenu de la première colonne étant vide, à l'exception de l'espace inter-colonne, cela impose le retrait des lignes suivantes.

Contrôle de l'espacement horizontal

Latex est évidemment un outil très puissant pour la composition de textes mathématiques. La composition de textes scientifiques était l'un des principaux objectifs du noyau du système Tex que Latex prolonge. Cependant, il n'interprète pas toujours exactement les formules comme vous aimeriez qu'il le fasse. Il doit parfois choisir entre plusieurs options quand il rencontre une expression ambiguë. Le résultat a tendance à être légèrement incorrect au niveau de l'espacement horizontal. Dans ces cas, le résultat reste malgré tout encore satisfaisant, pourtant, tous les perfectionnistes voudront sans nul doute affiner leurs formules afin d'assurer un espacement horizontal impeccable. Ce sont généralement des ajustements très subtiles.

Dans d'autres circonstances où Latex a fait son travail correctement, vous aimeriez juste ajouter un certain espace, pour éventuellement placer un commentaire. Par exemple, dans l'équation suivante, il est préférable de s'assurer qu'il y a une place suffisante entre les maths et le texte.

\[f(n) = \left\{ 
\begin{array}{l l}
  n/2 & \quad \mbox{si $n$ est pair}\\
  -(n+1)/2 & \quad \mbox{si $n$ est impair}\\ \end{array} \right. \]

Latex a défini deux commandes qui peuvent être employées n'importe où dans les documents (pas seulement en mode mathématique) pour insérer un certain espace horizontal. Ce sont les commandes \quad et \qquad.

Un \quad abréviation de quadratin est un espace égal à la taille de la police courante. Ainsi, si vous employez une police de 11 points (11pt), alors l'espace fourni par \quad sera également de 11 points (horizontalement, naturellement). Le \qquad donne deux fois l'espace précédent. Comme vous pouvez le voir à partir du code de l'exemple ci-dessus, des \quad ont été employés pour ajouter une certaine séparation entre les maths et le texte.

Pour revenir à l'affinement mentionné au début du document, un bon exemple montrerait une simple intégrale indéfinie de y par rapport à x:

Si vous désirez essayer, vous pouvez écrire:

\[ \int y \mathrm{d}x \]

Cependant, ceci ne donne pas un résultat correct. Latex ne respecte pas l'espace blanc à gauche dans le code pour signifier que le y et le x sont des entités indépendantes. Au lieu de cela, il les colle l'une à l'autre. Un \quad laisserait un trop grand espace dans cette situation; il n'y a besoin que de quelques petits espaces dans ce type d'exemple, et c'est pour cela que Latex fournit:

Commande Description Taille
\, petit espace 3/18 d'un quadratin
\: moyen espace 4/18 d'un quadratin
\; grand espace 5/18 d'un quadratin
\! espace négatif -3/18 d'un quadratin

NB vous pouvez utiliser plusieurs commandes à la suite pour laisser un plus grand espace si nécessaire.

Ainsi, pour corriger le problème actuel:

\int y\, \mathrm{d}x
\int y\: \mathrm{d}x
\int y\; \mathrm{d}x

Utiliser un espace négatif peut sembler anormal, cependant il n'existerait pas s'il était inutile. Prenez l'exemple suivant:

Fichier:Espaceh7.png

La notation matricielle pour représenter les coefficients binomiaux n'est pas assez « capitonnée ». Il y a trop d'espace entre les parenthèses et le contenu réel. Ceci peut facilement être corrigé en ajoutant quelques espaces négatifs après la parenthèse gauche et avant la parenthèse droite.

Fichier:Espaceh7.png

\[\left(\!\!\!
  \begin{array}{c}
    n \\
    r
  \end{array}
  \!\!\!\right) = C_r^n = \frac{n!}{r!(n-r)!}
\]

Fichier:Espaceh8.png

Introduction aux maths d'AMS

Cette section en encore en développement.

Quelques commandes LaTeX utiles sont disponibles sous forme de paquets nommés amsmath. Ils peuvent être chargés sur la plupart des installations de LaTeX en plaçant dans le préambule de votre document cette commande. (C'est-à-dire avant la commande \begin{document}):

\usepackage{amsmath}


Une commande très utile rend possible, au moyen de ces paquets, l'alignement des objets, par exemple le signe d'égalité (=) sur des lignes d'équations successives. Voici un exemple:

\begin{align}
x &= a + (b + a) \\
&= 2a + b.
\end{align}

Le symbole esperluette (&) est utilisé pour préciser les points dans chaque ligne qui seront supposés être alignés verticalement, mais n'apparaissent pas dans le résultat final qui ressemble à ce qui suit:

Fichier:Equalign1.png

Les équations sont numérotées par défaut. Les numéros d'équation peut être supprimés en remplaçant le mot align par le mot align* au début et à la fin des équations à aligner:


\begin{align*}
x &= a + (b + a) \\
&= 2a + b.
\end{align*}

Le résultat ressemble à ceci:

Fichier:Equalignetoile.png

Une autre solution est de les supprimer sur une ligne particulière en ajoutant l'expression \notag, comme nous le montrons ici:

\begin{align}
x &= a + (b + a) \notag \\
&= 2a + b.
\end{align}

Le résultat ressemble à ceci:

Fichier:Equalignsansanot.png

Des annotations dans chaque ligne peuvent être ajoutées en les séparant des équations, en utilisant deux esperluettes (&&):

\begin{align}
x &= a + (b + a) && \text{Axiome C} \\
&= 2a + b && \text{Axiomes A \& F}.
\end{align}

Voici le résultat:

Fichier:Equalignanot.png

Résumé

Comme vous pouvez commencer à le voir, la composition de textes mathématiques peut parfois être embêtante. Cependant, parce que Latex fournit de nombreux contrôles, vous pouvez obtenir des documents mathématiques de qualité professionnelle avec relativement peu d'effort (une fois que vous vous êtes familiarisé avec Latex, bien sûr). Il serait possible d'aller plus loin sur le thème des mathématiques parce que cela semble illimité. Cependant, avec ces deux tutoriels, vous devriez être capable de vous en sortir honorablement.


Fichiers: [tutorial10/textineqn.tex textineqn.tex] | [tutorial10/textineqn.pdf textineqn.pdf] | [tutorial10/mathsize.tex mathsize.tex] | [tutorial10/mathsize.pdf mathsize.pdf] | [tutorial10/mathsize2.tex mathsize2.tex] | [tutorial10/mathsize2.pdf mathsize2.pdf] | [tutorial10/multiline.tex multiline.tex] | [tutorial10/multiline.pdf multiline.pdf] | [tutorial10/longeqns.tex longeqns.tex] | [tutorial10/longeqns.pdf longeqns.pdf] | [tutorial10/hspacing.tex hspacing.tex] | [tutorial10/hspacing.pdf hspacing.pdf]
ressources utiles: Guide d'utilisation du paquet amsmath [pdf]