我想在文档中对齐一些化学反应。这是我所做的示例:
\begin{equation}
\nuclide[14][7]{N} + n \to \nuclide[14][6]{C} + p
\end{equation}
<Some text>
\begin{align*}
&\nuclide[14][7]{N} + n \to \nuclide[11][5]{B} + \nuclide[4][2]{H}\\%
&\nuclide[14][7]{N} + n \to \nuclide[12][6]{C} + \nuclide[3][1]{H}\\%
\end{align*}
我想将第一个方程与接下来的两个方程对齐。我该怎么做?
答案1
使用化学包不是更容易吗mhchem
(连同已经提出的amsmath
) 而不是tensor
?mhchem
的\ce
宏是专门为在对齐环境中使用而定义的,例如{align}
。对于对齐方程之间的文本,可以amsmath
使用\intertext{}
。
\documentclass{book}
\usepackage[version=4]{mhchem}
\usepackage{amsmath}
\begin{document}
\begin{align*}
\ce{^{14}_7N + n &-> ^{11}_5B + ^4_2H}
\intertext{Some text in between that is not aligned or anything.}
\ce{
^{14}_7N + n &-> ^{12}_6C + ^3_1H \\
^{16}_8O + n &-> ^{10}_4Be + ^7_4Be
}
\end{align*}
\end{document}
编辑:为了使第一个方程式有编号但不使第二个和第三个方程式有编号,基本上有两个选择:
- 使用(不带星号!)并通过或
{align}
抑制第二和第三个等式的数字。\notag
\nonumber
- 使用
{align*}
并手动添加第一个数字,方法是说\tag{\refstepcounter{equation}\theequation}
我个人更喜欢第一种。顺便说一句:如果你还没有读过,你可能想看看“数学模式”赫伯特·沃斯 (Herbert Voß) 著。
\documentclass{book}
\usepackage[version=4]{mhchem}
\usepackage{amsmath}
\begin{document}
\begin{align}
\ce{^{14}_7N + n &-> ^{11}_5B + ^4_2H}
\intertext{Some text in between that is not aligned or anything.}
\ce{
^{14}_7N + n &-> ^{12}_6C + ^3_1H \nonumber \\
^{16}_8O + n &-> ^{10}_4Be + ^7_4Be \notag
}
\end{align}
\begin{align*}
\ce{
^{14}_7N + n &-> ^{11}_5B + ^4_2H \tag{\refstepcounter{equation}\theequation}
}
\intertext{Some text in between that is not aligned or anything.}
\ce{
^{14}_7N + n &-> ^{12}_6C + ^3_1H \\
^{16}_8O + n &-> ^{10}_4Be + ^7_4Be
}
\end{align*}
\end{document}
答案2
尝试包align*
提供的环境amsmath
。要更改对齐的位置,请更改&
符号。
\documentclass{book}
\usepackage{tensor}
\usepackage{amsmath}
\begin{document}
\begin{align*}
&\nuclide[14][7]{N} + n \to \nuclide[11][5]{B} + \nuclide[4][2]{H}\\
&\nuclide[14][7]{N} + n \to \nuclide[12][6]{C} + \nuclide[3][1]{H}\\
&\nuclide[16][8]{O} + n \to \nuclide[10][4]{Be} + \nuclide[7][4]{Be}
\end{align*}
\end{document}