Comment mettre en page un système d'équations?
On peut utiliser les délimiteurs
left
et right.
classiques devant un tableau comme ici:
\[ \left \{ \begin{array}{c @{=} c} x & \sin a \cos b \\ y & \sin a \sin b \end{array} \right. \]
On peut utiliser le package amsmath, permettant de
placer des choix conditionnels comme cet exemple:
\begin{exemple}{Utilisation de ''cases'' pour un système% \label{maths-syst-case}} \begin{equation*} \|x\|= \begin{cases} -x & \text{si } x < 0 \\ x & \text{si } x \geq 0 \end{cases} \end{equation*}
On peut utiliser le package bmathenv, permettant de
numéroter le système ou chaque équation du système, le compteur
pouvant alors être personnalisé.
Exemples~:
% numérotation du système \begin{System} 2x + y = 6 \\ 3x + y = 7 \end{System} %numérotation de chaque équation du système \begin{EqSystem} 2x + y = 6 \\ 3x + y = 7 \end{EqSystem} %%%% fin exemple %%%%
Le package cases disponible sur
https://www.ctan.org/{macros/latex/contrib/misc/} gère les systèmes d'équations.
Exemple :
\begin{numcases}{\|x\|=} x, & for $x \geq 0$\\ -x, & for $x < 0$ \end{numcases}
Le fichier
xtdeqnra.sty
est une adaptation
de ce package par \nom{J.}{Laurens}. Source~\vref{xtdeqnra}.
- xtdeqnra.sty
% fichier xtdeqnra.sty ver 1.1 Decembre 2004 % % Copyright (C) 2004 by Jerome LAURENS % % Ces macros peuvent e^tre librement transmises, sans modification aucune % tant que cette notice est intacte. % Base' sur le paquetage cases.sty de D.Arseneau % et la commande \eqnarray de Leslie Lamport et de l'e'quipe LaTeX3. % % On rajoute un parame`tre optionnel a` l'environnement eqnarray qui % est un delimiteur gauche % % Exemple : source % % \begin{eqnarray}[\{] % x_1 & = & valeur_1 \\ % x_2 & = & valeur_2 \\ % x_3 & = & valeur_3 % \end{eqnarray} % % Re'sultat % % / x_1 = valeur_1 (1) % | % < x_2 = valeur_2 (2) % | % \ x_3 = valeur_3 (3) % % Pour utiliser ce paquetage, % inclure "\usepackage{xtdeqnra}" apre`s \documentclass. % % On peut utiliser l'environnement subequations pour avoir (1a), (1b) et (1c) % - - - - - % \ProvidesPackage{xtdeqnra}[2004/12/10 version 1.1] % - sauvegarde de l'environnement eqnarray \let\x@eqnarray\eqnarray \let\endx@eqnarray\endeqnarray % - environnement de remplacement \def\eqnarray{\@ifnextchar[% {\let\endeqnarray\endy@eqnarray\y@eqnarray} {\let\endeqnarray\endx@eqnarray\x@eqnarray}} % % - nouvel environnement avec un de'limiteur a` gauche \def\y@eqnarray[#1]% {\gdef\@leftdelimiter{#1} \displaymath \setbox\tw@\vbox \bgroup \stepcounter{equation}% \def\@currentlabel{\p@equation\theequation}% \global\@eqnswtrue \m@th \everycr{}% \tabskip\@centering \let\\\@eqncr \halign to\displaywidth \bgroup \hskip \@ne\arraycolsep \hfil$\displaystyle \tabskip\z@skip{##}$% \@eqnsel &\global\@eqcnt\@ne \hskip \tw@\arraycolsep \hfil${##}$\hfil &\global\@eqcnt\tw@ \hskip\tw@\arraycolsep $\displaystyle{##}$\hfil \unskip\hfil \tabskip\@centering% \unskip removes space if no explanations &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup \tabskip\z@skip \cr } \def\endy@eqnarray{% \@@eqncr \egroup % end \halign, which does not contain brace \global\advance\c@equation\m@ne \unskip\unpenalty \unskip\unpenalty \setbox\z@\lastbox % grab last line \nointerlineskip \copy\z@ % then put it back \setbox\z@\hbox{\unhbox\z@}% \global\dimen@i\wd\z@ \egroup% end \vbox (box\tw@, box\z@ is restored to LHS) \hbox to\displaywidth{% \m@th % assemble the whole equation \hskip\@centering \hbox to\dimen@i{% $\displaystyle% \dimen@\ht\tw@ \advance\dimen@\dp\tw@ % get size of brace \setbox\z@\hbox{$\mathord{\left\@leftdelimiter\vcenter to\dimen@{\vfil}\right.}$}% \dimen@\wd\z@ \kern-\dimen@ \box\z@% \n@space % make brace $\hfil} \hskip\@centering % finished first part (filled whole line) \kern-\displaywidth$% \vcenter{\box\tw@}$% overlay the alignment }% end the \hbox \ifx\notag\undefined\else\notag\fi% fixed on 12/10/2004 to support amsmath \enddisplaymath \global\@ignoretrue }
Le package delarray disponible sur
https://www.ctan.org/{macros/latex/required/tools/} peut également être utilisé dans ce but.