我在使用 Align 环境与超过 1 行的括号结合时遇到了一个奇怪的问题。当我在 Align 环境中向公式中添加对齐标记 (&) 时,突然收到一条错误消息,提示我多了一个 }。
重现错误的最小示例如下所示:
\documentclass[a4paper,10pt]{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
J =& 2 \left[3x \right. \nonumber \\
\left. +& 4 \right]
\end{align}
\end{document}
如果我去掉 &,它就可以正常工作。如果我去掉括号,它也可以正常工作。有人能解释一下发生了什么以及我该如何解决这个问题吗?
为了完整起见,实际方程如下所示:
\begin{align}
J=E-\Delta P V =& \gamma\int_{-\pi}^{\pi}\int_0^{r_0}\left[\sqrt{r^2+r^2 \partial_r z^2 + \partial_\phi z^2}-r \cos\theta_Y \right. \nonumber \\
\left. + & \,\frac{\rho g}{\gamma} z r \left(\frac{z}{2}\cos\alpha-r \sin \alpha \cos\phi\right)-\Delta P r z \right] dr d\phi
\end{align}
答案1
那是你要的吗?
% arara: pdflatex
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
J &= 2 \left[3x \right. \nonumber \\
&+ \left. 4 \right]
\end{align}
\end{document}
您的 MWE 中的问题是您在&
左分隔符和右分隔符之间放置了 。在大多数情况下,我建议手动选择,而不是使用 和 的自动解决方案\left[
(\right]
尤其是在这里,第一行的括号可以获得与第二行的括号不同的自动大小)。在下面的 MWE 中,您可以看到如何使用\bigl[
/\bigr]
作为示例。在这种情况下,您可以只使用[ ]
,因为您不需要放大的括号。
% arara: pdflatex
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
J &= 2 \bigl[3x \nonumber \\
&\quad+ 4\bigr]
\end{align}
\end{document}
这是您的真实示例:
% arara: pdflatex
\documentclass{article}
\usepackage{amsmath}
\newcommand{\der}{\,\mathrm{d}}
\begin{document}
\begin{align}
J&=E-\Delta PV\nonumber\\
&=\gamma\int_{-\pi}^{\pi}\int_0^{r_0}\biggl[\sqrt{r^2+r^2 \partial_r z^2 + \partial_\phi z^2}-r \cos\theta_Y \nonumber \\
&\phantom{{}=\gamma\int_{-\pi}^{\pi}\int_0^{r_0}\biggl[}+\frac{\rho g}{\gamma} zr \biggl(\frac{z}{2}\cos\alpha-r \sin \alpha \cos\phi\biggr)-\Delta Prz\biggr] \der r\der\phi
\end{align}
\end{document}
答案2
对于这样的分割方程,我会使用multline
而不是align
:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{multline}
J = E-\Delta P V =
\gamma\int_{-\pi}^{\pi}\int_0^{r_0}\biggl[
\sqrt{r^2+r^2 \partial_r z^2 + \partial_\phi z^2} - r \cos\theta_Y +{}\\
\frac{\rho g}{\gamma} z r
\left(\frac{z}{2}\cos\alpha- r \sin \alpha \cos\phi\right) -
\Delta P r z
\biggr]\,dr \,d\phi
\end{multline}
\end{document}
请注意,如果分隔符位于显示屏的不同部分(包括单行中的不同单元格),则明确的尺寸命令\biggl
和是不可避免的。\biggr
align
如果您喜欢三阶段显示,请使用split
:
\documentclass{article}
\usepackage[tbtags]{amsmath}
\begin{document}
\begin{equation}
\begin{split}
J &= E-\Delta P V\\
&= \gamma\int_{-\pi}^{\pi}\int_0^{r_0}\biggl[
\sqrt{r^2+r^2 \partial_r z^2 + \partial_\phi z^2} - r \cos\theta_Y +{}\\
&\hspace{6em}\frac{\rho g}{\gamma} z r
\left(\frac{z}{2}\cos\alpha- r \sin \alpha \cos\phi\right) -
\Delta P r z
\biggr]\,dr \,d\phi
\end{split}
\end{equation}
\end{document}
该\hspace{6em}
位已通过眼睛计算;\hphantom
您可以使用它添加精确的空间来与上面一行中的某些内容对齐,尽管这似乎没有必要。
答案3
\documentclass[a4paper,10pt]{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
J &= 2 \left[3x \right. \nonumber \\
& \left.{}+ 4 \right]
\end{align}
\end{document}
在您的示例中,一对
\left
\right
被分开&
,不是一个组。&
请观察和的切换=
。使用组
left
和right
很简单,但不推荐。特别是括号的有效大小在不同的行中可能不同。我宁愿在第二行
\quad
之前添加例如。+