我正在寫一篇帶有長方程式的手稿。為了打破這個方程式,我更喜歡包包align
提供的環境amsmath
,而不是包包提供的環境eqnarray
。
在下面的範例中,我展示了我需要的對齊類型。給出eqnarray
了正確的行為,將在符號align
後面刪除一個空格&
。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{eqnarray}
\vec{F} &=& m\vec{a}\\
&& + \frac{dm}{dt} \vec{v}
\end{eqnarray}
\begin{align}
\vec{F} =& m\vec{a}\\
& + \frac{dm}{dt} \vec{v}
\end{align}
\end{document}
問題
是否可以使用 複製第一個範例align
?
答案1
你應該=
放在&
.我在第一行末尾添加了\phantom{=:} to push the
+ +`。to right. (IMO it would be nice if we put this
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{eqnarray}
\vec{F} &=& m\vec{a}\\
&& + \frac{dm}{dt} \vec{v}
\end{eqnarray}
\begin{align}
\vec{F} &= m\vec{a} \\
& \phantom{=:} + \frac{dm}{dt} \vec{v}
\end{align}
\end{document}
更新根據@egreg(他是數學家,因此我不會對他所說的說不:))的建議,而不是\phantom{=:}
可以用來\qquad
將事情推向正確的方向。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{eqnarray}
\vec{F} &=& m\vec{a}\\
&& + \frac{dm}{dt} \vec{v}
\end{eqnarray}
\begin{align}
\vec{F} &= m\vec{a} \\
& \qquad + \frac{dm}{dt} \vec{v}
\end{align}
\end{document}
注意:建議不使用eqnarray.
答案2
好的,這個“答案”擴展了這裡正確的範圍,但繼續建議將其&
對齊amsmath
後關係的符號根本就是錯誤的。
的正確位置&
是前關係的標誌。這是 tex 本身的基礎。
作為練習,這裡是教科書第 192 頁上第一個多行顯示的程式碼,作為(普通)\eqalign
with &=
,然後再次顯示 with=&
作為兩個範例中唯一的差異。
$$\eqalign{%
(x+y)(x-y) &= x^2 -xy +yx -y^2\cr
&= x^2 -y^2\cr
(x+y)^2 &= x^2 +2xy +y^2\cr
}$$
%
now, with ampersands and equal signs interchanged:
%
$$\eqalign{%
(x+y)(x-y) =& x^2 -xy +yx -y^2\cr
=& x^2 -y^2\cr
(x+y)^2 =& x^2 +2xy +y^2\cr
}$$
\bye
這是輸出:
間距由第 170 頁間距表中的數值決定。由=
後面接的符號表示的「空」條件&
不在該表中。然而,結果是顯而易見的。 amsmath 只是遵循這個模型,並取決於預設結果。
答案3
為了對齊產生類似的結果等式數組就像在此樣品中,
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{eqnarray}
\vec{F} &=& m\vec{a}\\
&& + \frac{dm}{dt} \vec{v}
\end{eqnarray}
\end{document}
= 符號與 & 之間應使用一對大括號,如下所示,
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
\vec{F} ={}& m\vec{a}\\
& + \frac{dm}{dt} \vec{v}
\end{align}
\end{document}
致謝
我要感謝達萊夫和托比昂指出答案並推薦稿經過拉爾斯·馬德森,
避免使用eqnarray!
《Practex 雜誌》,2006 年,第 4 期