如何对齐一组多行方程

如何对齐一组多行方程

我正在尝试对齐一组长方程式,它们本身就是align环境,因为它们大多数分布在多行上。

目前我只有一个align环境序列,每个方程式都在其中,以便对齐每个方程式的各个部分。我附上了结果的屏幕截图:

未对齐

我想要得到的是更像

对齐

这与经过期刊编辑办公室编辑后的方程式相同,而且看起来好多了。

这是 MWE。我希望所有三个等式都对齐在等号上。

\documentclass{article}
\usepackage{amsmath}

\begin{document}
\begin{align}
a & =  b + c + d \nonumber \\
  & \qquad + e + f + g
\label{eq:1}
\end{align}
\begin{align}
k & = l + m + n + m + n + m + n \nonumber \\
  & \qquad + o + p + q
\label{eq:2}
\end{align}
\begin{equation}
r = s + t (u + v + w)
\label{eq:3}
\end{equation}
\end{document}

答案1

没有实际的例子,下面是我如何解释你想要什么。

示例代码的输出

输入如下:

\documentclass{article}
\usepackage{mathtools}
\begin{document}
This example shows \verb|aligned| equations within
an \verb|align| environment.
\begin{align}
  \phantom{i + j + k}
  &\begin{aligned}
    \mathllap{a} &= b + c + d\\
      &\qquad + e + f + g + x + y + z
  \end{aligned}\\
  &\begin{aligned}
    \mathllap{i + j + k} &= l + m + n\\
      &\qquad + o + p + q
  \end{aligned}
\end{align}
\end{document}

最长的左侧元素作为 a 插入到开头,并且通过使用来自 包的将\phantom 各个段的左侧元素的长度aligned搭接到左侧,使其“不可见” 。\mathllapmathtools

原始答案(正确)指出仅当左侧长度相同时才能正确对齐段。此修改克服了该问题。

答案2

您还可以split在环境中使用环境,在要对齐的位置align使用 & 符号 ( )。以下是 MWE:&

\documentclass{article}
\usepackage{amsmath}

\begin{document}
\begin{align}
\begin{split}\label{eq:1}
    a ={}& b + c + d\\
         & + e + f + g
\end{split}\\
\begin{split}\label{eq:2}
    k ={}& l + m + n + m + n + m + n\\
         & + o + p + q
\end{split}\\
    r ={}& s + t (u + v + w)\label{eq:3}
\end{align}
\end{document}

请注意,最后一个方程不在环境内split,但仍然与其余方程一致,因为它仍然在环境内align

输出如下所示:

对齐环境内的拆分环境的输出

请注意 & 符号前的空组 ( {})。如果没有这些空组,等号和后面的字符之间就不会应用字距调整,因为对齐会破坏方框。虽然空组本身不执行任何操作,但在数学模式下,它们之前的符号会添加字距调整,就像空组是普通字符一样。这使 TeX 能够选择最合适的间距。如果 & 符号放在等号之前,对齐环境会围绕等号调整字距,这应该不会带来麻烦,但拆分等式的加法符号会位于令人不舒服的靠后位置,需要进行某种手动调整。

答案3

作为对芭芭拉答案的扩展,您可以只将方程式的右侧包装到aligned子环境中。这样您就可以对齐各个方程式的等号,而不受左侧或右侧大小的影响。

\documentclass{article}
\usepackage{amsmath}
\begin{document}
This example shows \verb|aligned| equations within
an \verb|align| environment.
\begin{align}
  a &= \begin{aligned}[t]
      &b + c + d +\\
      &c + e + f + g + h + i
       \end{aligned}\\
  k &= \begin{aligned}[t]
      &l + m + n\\
      &+ o + p + q
       \end{aligned}
\end{align}
\end{document}

第二个等式的第二行上的加号不完全匹配,因为它是一个mathbin符号。也许对 TeX 有更多了解的人可以评论如何最好地修复它。

答案4

这是使用命令来实现少量文本的一种方法\intertext

\documentclass{article}
\usepackage{amsmath}
\begin{document}
This example shows \verb|aligned| equations within
an \verb|align| environment.
\begin{align}
  \begin{aligned}
a &= b + c + d\\
  &\qquad + e + f + g
  \end{aligned}\\
  \begin{aligned}
k &= l + m + n + m + n + m + n\\
  &\qquad + o + p + q
  \end{aligned}
\end{align}

This example shows text and  equations within
an \verb|align| environment.
\begin{align}
a &= b + c + d\\
  &\qquad + e + f + g
\intertext{A small amount of text can go here with $x=2$ inline math
 and     $$\int_a^b f(x)\,dx=F(b)-F(a)$$ (even inline math). But not a lot 
of text. }
k &= l + m + n + m + n + m + n\\
  &\qquad + o + p + q
\end{align}

\end{document}

相关内容