写于:2024年1月5日 晚
修改:


摘要:数学公式根据其位置可以分为行内公式行间公式。行内公式更加紧凑,而行间公式富于变化,可以为其编号、引用、换行等操作。本文对数学公式的 LaTex 做简单记录和整理。


行内公式

行内公式由一对 $$ 符号包裹,公式前后一般用空格与正文内容分开。若公式前后有标点符号,则不加空格。

mass-energy equivalence: $ E = mc^2 $ 

行内公式好像无法添加编号

行间公式

LaTex 中用 equation 环境包裹。

\begin{equation}E = mc^2 \end{equation}

行间公式的对齐、编号位置等性质由文档类选项控制,文档类的 fleqn 选项令行间公式左对齐;leqno 选项令编号放在公式左边。

编号

equation 环境会为公式自动生成一 个编号,\tag 命令可以手动修改公式的编号

\begin{equation}E = mc^2 \tag{tag_test}\end{equation}

\notag\nonumber 命令可以取消公式编号

\begin{equation}E = mc^2 \notag\end{equation}

行间无编号公式的其他三种写法

\begin{equation*}E = mc^2 \end{equation*}\[ E = mc^2\]% 一般不建议用 $$ $$ 符号来写行间公式\begin{displaymath}E = mc^2 \end{displaymath}

公式引用

LaTex 中的公式可由 \label 标记,并由 \eqref 引用公式(宏包 amsmath 中的 eqref 是对 ref 的重写):

\begin{equation}E = mc^2 \label{mass-energy equivalence}\end{equation}Equation \eqref{mass-energy equivalence}, the increased relativistic mass (m) of a body times the speed of light squared (c2) is equal to the kinetic energy (E) of that body.

多行公式

equation 环境中的公式一般会在一行出现,甚至会超出文档边界。在宏包 amsmathmultline 环境中才可以用 \\ 折行。一般而言,折行位置的选择优先级为:等号–>–加号、减号–>–乘号、除号之前,其它位置应当避免折行。

multline 环境中用 \\ 折行会将公式编号放在最后一行,多行公式的首行左对齐,末行右对齐,其余行居中。公式的最后一行不写 \\,否则会产生一个多余的空行。

\begin{multline}a + b + c + d + e + f+ g + h + i \\= j + k + l + m + n\\= o + p + q + r + s\\= t + u + v + x + z\end{multline}

宏包 amsmathalign 环境,用 \\ 折行。全部右对齐align 环境会给每行公式都编号,可以用 \notag 去掉特定行的编号。

\begin{align}a + b + c + d + e + f+ g + h + i \\= j + k + l + m + n\\= o + p + q + r + s \notag \\= t + u + v + x + z\end{align}

多行公式按照 & 后的符号对齐,如下公式会按照等号对齐:

\begin{align}a + b + c + d + e + f+ g + h + i \\&= j + k + l + m + n\\&= o + p + q + r + s\\&= t + u + v + x + z\end{align}

以下公式按照每个等式首字母、等号对齐

\begin{align}a &=1 & b &=2 & c &=3 \\d &=-1 & e &=-2 & f &=-5\end{align}

gather 环境也可以编写多行公式,并为每个公式增加编号,不过每个公式均居中对齐

\begin{gather}a = b + c \\d = e + f + g \\h + i = j + k \\l + m = n\end{gather} 

多行公式的编号

多行公式编号主要分为两类,一类是每个公式均有一个编号(在 align 环境中编写公式即可),另一类是多行公式共用一个编号,用 alignedgathered 环境即可。

\begin{equation}\begin{aligned}&a = b + c \\&d = e + f + g \\&h + i = j + k \\&l + m = n\end{aligned}\end{equation}

无论是行内公式还是行间公式,在$$equation\[\] 中输入公式时都会进入数学模式,其特点为:

  1. 数学模式中输入的空格会被忽略。数学符号的间距默认由符号的性质(关系符号、运算符等) 决定。需要人为引入间距时,使用 \quad(一个字体的宽度)和 \qquad(一个字体的宽度) 等命令。
  2. 不允许有空行(分段)。
  3. 所有的字母会被当作数学公式中的变量处理,字母间距与文本模式不一致。如果想在数学公式中输入文本,可以用 amsmath 提供的 \text 命令。当然,如果想在文本中输入少量数学公式或符号,就采用行内公式的写法。


参考:一份(不太)简短的 LATEX 2ε 介绍