web-dev-qa-db-fra.com

Comment puis-je avoir des sauts de ligne dans mes longues équations LaTeX?

Mon équation est très longue. Comment puis-je le faire continuer sur la ligne suivante plutôt que de quitter la page?

117
ubutu

Si votre équation ne tient pas sur une seule ligne, l'environnement multline est probablement ce dont vous avez besoin:

\begin{multline}
first part of the equation \\
= second part of the equation
\end{multline}

Si vous avez également besoin d'un peu d'alignement par rapport à la première partie, vous pouvez utiliser split:

\begin{equation}
\begin{split}
first part &= second part #1 \\
           &= second part #2
\end{split}
\end{equation}

Les deux environnements nécessitent le package amsmath.

120

Sans configurer votre environnement mathématique pour le découpage, vous pouvez forcer une nouvelle ligne avec deux barres obliques inverses dans une séquence comme celle-ci:

Bla Bla \\ Bla Bla in another line

Le problème avec ceci est que vous devrez déterminer où une ligne est susceptible de se terminer et forcer à toujours avoir une rupture de ligne à cet endroit. Avec des équations, plutôt que du texte, je préfère cette manière manuelle.

Vous pouvez également utiliser \\* pour empêcher le démarrage d'une nouvelle page.

10
Uri

Il y a plusieurs façons de gérer cela. Le premier, et peut-être le mieux, consiste à retravailler votre équation pour qu'elle ne soit pas si longue; c'est probablement illisible si c'est si long.

Si cela doit être le cas, consultez le AMS Short Math Guide pour connaître les différentes manières de le gérer. (sur la deuxième page)

Personnellement, j’utiliserais un environnement d’alignement afin que la rupture et l’alignement puissent être contrôlés avec précision. par exemple.

\begin{align*}
   x&+y+\dots+\dots+x_100000000\\
   &+x_100000001+\dots+\dots
\end{align*}

qui alignerait les premiers signes plus de chaque ligne ... mais évidemment, vous pouvez définir les alignements où vous le souhaitez.

5
TJ Ellis

Je pense que j'ai l'habitude d'utiliser eqnarray ou quelque chose. Ça vous permet de dire

\begin{eqnarray*}
    x &=& blah blah blah \\ 
      & & more blah blah blah \\
      & & even more blah blah
\end{eqnarray*}

et il sera aligné par le & & ... Comme Pkaeding l'a mentionné, il est difficile à lire, mais quand vous avez une équation aussi longue que ça, ce sera difficile à lire, peu importe ce que ... (Le * le rend ne pas avoir un numéro d'équation, IIRC)

4
Brian Postow

multline est préférable d'utiliser. Au lieu de cela, vous pouvez également utiliser dmath, split.

Voici un exemple:

\begin{multline}
  {\text {\bf \emph {T(u)}}} ={  \alpha *}{\frac{\sum_{i=1}^{\text{\bf \emph {I(u)}}}{{\text{\bf \emph {S(u,i)}}}* {\text {\bf \emph {Cr(P(u,i))}}} * {\text {\bf \emph {TF(u,i)}}}}}{\text {\bf \emph {I(u)}}}}  \\
   +{  \beta *}{\frac{\sum_{i=1}^{\text{\bf \emph {$I_h$(u)}}}{{\text{\bf \emph {S(u,i)}}}* {\text {\bf \emph {Cr(P(u,i))}}} * {\text {\bf \emph {TF(u,i)}}}}}{\text {\bf \emph {$I_h$(u)}}}}
\end{multline}
3
NarasimhaTejaJ

J'ai utilisé le \begin{matrix}

\begin{equation}
\begin{matrix}
    line_1 \\ 
    line_2 \\ 
    line_3
\end{matrix}
\end{equation}
2
Paulo Ferreira

Utilisez eqnarray et \nonumber

exemple:

\begin{eqnarray}
    sample = R(s,\pi(s),s') + \gamma V^{\pi} (s') \nonumber \\
    \label{eq:temporal-difference}
     V^{\pi}_{k+1}(s) = (1-\alpha)V^{\pi}(s) - \alpha[sample]
\end{eqnarray}
2

Cela a fonctionné pour moi avec le package mathtools.

\documentclass{article}
\usepackage{mathtools}
\begin{document}
    \begin{equation}
        \begin{multlined}
            first term \\
            second term                 
        \end{multlined}
    \end{equation}
\end{document}
1
Mukesh Chapagain

Pas encore mentionné ici, un autre choix est l'environnement aligned, encore du paquet amsmath :

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{equation}
  \begin{aligned}
    A & = B + C\\
      & = D + E + F\\
      & = G
  \end{aligned}
\end{equation}

\end{document}
1
MattAllegro

RÉPONSE SIMPLE ICI

\begin{equation}
\begin{split}

equation \\
here

\end{split}
\end{equation}
0
Cyril Ivar Garcia

Pour résoudre ce problème, j'ai utilisé l'environnement tableau à l'intérieur de l'environnement d'équation, comme ceci:

\begin{equation}
    \begin{array}{r c l}
       first Term&=&Second Term\\
                 &=&Third Term
    \end{array}
\end{equation}
0
Yassine EL MALKI